Đến nội dung


Hình ảnh
- - - - -

(Yêu Cầu) lisp copy nội dung text trong một loạt dimenson...


  • Please log in to reply
41 replies to this topic

#21 dunguss3581

dunguss3581

    biết lệnh rotate

  • Advance Member
  • PipPipPip
  • 139 Bài viết
Điểm đánh giá: 5 (bình thường)

Đã gửi 26 May 2015 - 10:41 AM

 

Hình như theo mình được biết thì (ssget point)  thì chỉ chon được đối tượng vẽ sau cùng thôi^^

Nếu bạn muốn chỉ chọn 1 đối tượng thì Đối tượng cần lấy phải có gì đặc biệt so với các đối tượng khác ,có 2 cách^ :

  1. Kết hợp tham số Filter-List cho hàm ssget
  2. Dùng vòng lặp (while,foreach,repeat ..) lọc qua từng đối tượng rồi chon đối tượng cần^^

 

Vậy tức là không dùng tham số  Filter-List cho hàm (ssget point) được à.


  • 0

#22 dunguss3581

dunguss3581

    biết lệnh rotate

  • Advance Member
  • PipPipPip
  • 139 Bài viết
Điểm đánh giá: 5 (bình thường)

Đã gửi 26 May 2015 - 10:44 AM

 

Hình như theo mình được biết thì (ssget point)  thì chỉ chon được đối tượng vẽ sau cùng thôi^^

Nếu bạn muốn chỉ chọn 1 đối tượng thì Đối tượng cần lấy phải có gì đặc biệt so với các đối tượng khác ,có 2 cách^ :

  1. Kết hợp tham số Filter-List cho hàm ssget
  2. Dùng vòng lặp (while,foreach,repeat ..) lọc qua từng đối tượng rồi chon đối tượng cần^

Tôi viết thế này là khôn được phải không? (ssget point '((8 ."file 1")))


  • 0

#23 Tr.CongSon

Tr.CongSon

    biết lệnh array

  • Members
  • PipPipPip
  • 183 Bài viết
Điểm đánh giá: 40 (tàm tạm)

Đã gửi 26 May 2015 - 11:50 AM

Tôi viết thế này là khôn được phải không? (ssget point '((8 ."file 1")))

Point ở đây là tọa độ điểm bạn ạ ,cấu trúc lệnh (ssget <point> Filter-List)

Ex: (ssget '(120 100 0) '((8 . "file 1")))

Bạn chú ý : mã dxf 8 là Layer name nhé!


  • 0

#24 snowman.hms

snowman.hms

    biết vẽ ellipse

  • Members
  • PipPip
  • 55 Bài viết
Điểm đánh giá: 26 (tàm tạm)

Đã gửi 26 May 2015 - 12:09 PM

(setq p (getpoint "\nSelect object...")
      s (ssget "_C" p p '((0 . "LINE"))))

  • 1

#25 dunguss3581

dunguss3581

    biết lệnh rotate

  • Advance Member
  • PipPipPip
  • 139 Bài viết
Điểm đánh giá: 5 (bình thường)

Đã gửi 26 May 2015 - 01:15 PM

(setq p (getpoint "\nSelect object...")
      s (ssget "_C" p p '((0 . "LINE"))))

cảm ơn bạn. mình làm đã đạt yêu cầu rồi. còn vấn đề này mình nhờ nữa nhé. mình có 1 biến x khi chạy lisp yêu cầu nhập vào. nhưng khi lần sau dùng lệnh lại mình muốn ấn enter bỏ qua và muốn dùng lại giá trị đã sử dụng lệnh trước đó còn nếu muốn thay giá trị thì nhập vào nó sẽ thay giá trị khác.


  • 0

#26 snowman.hms

snowman.hms

    biết vẽ ellipse

  • Members
  • PipPip
  • 55 Bài viết
Điểm đánh giá: 26 (tàm tạm)

Đã gửi 26 May 2015 - 01:25 PM

(setq x (cond ((getxxx))
     (x)
     (defaul-value)
     ))

  • 1

#27 dunguss3581

dunguss3581

    biết lệnh rotate

  • Advance Member
  • PipPipPip
  • 139 Bài viết
Điểm đánh giá: 5 (bình thường)

Đã gửi 26 May 2015 - 01:43 PM

(setq x (cond ((getxxx))
     (x)
     (defaul-value)
     ))

ok rồi bạn. chỉnh cho mình in cái giá trị defaul lên dòng nhắc lệnh nhập x được không ông bạn? thank


  • 0

#28 snowman.hms

snowman.hms

    biết vẽ ellipse

  • Members
  • PipPip
  • 55 Bài viết
Điểm đánh giá: 26 (tàm tạm)

Đã gửi 26 May 2015 - 01:49 PM

(setq x (cond ((getint (strcat "\nSpecify a Value: <" (if x (itoa x) (itoa defaul-value))">  :")))
     (x)
     (defaul-value)
     ))
Note: x phải là biến hệ thống

  • 1

#29 dunguss3581

dunguss3581

    biết lệnh rotate

  • Advance Member
  • PipPipPip
  • 139 Bài viết
Điểm đánh giá: 5 (bình thường)

Đã gửi 26 May 2015 - 02:02 PM

(setq x (cond ((getint (strcat "\nSpecify a Value: <" (if x (itoa x) (itoa defaul-value))">  :")))
     (x)
     (defaul-value)
     ))

chưa ổn bạn ơi. mình chạy thử với biến số thực giá trị nhập lần sau không nhận thay thế giá trị nhận trước. 


  • 0

#30 snowman.hms

snowman.hms

    biết vẽ ellipse

  • Members
  • PipPip
  • 55 Bài viết
Điểm đánh giá: 26 (tàm tạm)

Đã gửi 26 May 2015 - 02:04 PM

getint -> getreal

itoa -> rtos


  • 0

#31 dunguss3581

dunguss3581

    biết lệnh rotate

  • Advance Member
  • PipPipPip
  • 139 Bài viết
Điểm đánh giá: 5 (bình thường)

Đã gửi 26 May 2015 - 02:09 PM

(setq x (cond ((getint (strcat "\nSpecify a Value: <" (if x (itoa x) (itoa defaul-value))">  :")))
     (x)
     (defaul-value)
     ))
Note: x phải là biến hệ thóngo

ok rồi cảm ơn nhé.


  • 0

#32 nhoclangbac

nhoclangbac

    biết vẽ circle

  • Members
  • PipPip
  • 38 Bài viết
Điểm đánh giá: 3 (bình thường)

Đã gửi 26 May 2015 - 03:32 PM


Hàm (defun LM:UnFormat ( str mtx / _replace rx ) ...

Đoạn này bị lỗi sao í người tuyết ôi :wub:  ... tiện thể giải thix cho Nhoc ý nghĩa luôn nha . Nhìn thấy kí hiệu ko choáng váng quá :wub:

 (foreach pair
                               '(
                                    ("\032"    . "\\\\\\\\")
                                    (" "       . "")
                                    (""      . "\\\\(\\\\[ACcFfHLlOopQTW]);]*;|\\\\[ACcFfHLlOopQTW]")
                                    ("$1$2/$3" . "([^\\\\])\\\\S([^;]*)[/#\\^]([^;]*);")
                                    ("$1$2"    . "\\\\(\\\\S)|[\\\\](})|}")
                                    ("$1"      . "[\\\\]({)|{")
                                )
                                (setq str (_replace (car pair) (cdr pair) str))
                            )
                            (if mtx
                                (_replace "\\\\" "" (_replace "" "(\\\\[ACcFfHLlOoPpQSTW])|({)|(})" str))
                                (_replace ""   "" str)
                            )
                        )
                    )
                )
            )
            (vlax-release-object rx)
            (if (null (vl-catch-all-error-p str))
                str
            )
        )
    )
)

  • 0

#33 snowman.hms

snowman.hms

    biết vẽ ellipse

  • Members
  • PipPip
  • 55 Bài viết
Điểm đánh giá: 26 (tàm tạm)

Đã gửi 26 May 2015 - 05:10 PM

Mình đã test thử và ko vấn đề gì, nếu bị lỗi thì vào trang này down LM:unformatstring

http://lee-mac.com/unformatstring.html

 

Môt số nguồn tham khảo:

 

https://msdn.microso...2(v=vs.85).aspx

 

http://www.theswamp....?topic=36173.30

 

http://www.theswamp....p?topic=44243.5


  • 1

#34 nhoclangbac

nhoclangbac

    biết vẽ circle

  • Members
  • PipPip
  • 38 Bài viết
Điểm đánh giá: 3 (bình thường)

Đã gửi 26 May 2015 - 05:27 PM

Ẹc :wacko: lỗi (màu đỏ) . Nhoc thường Test nhanh bằng cách copy Code trong thẻ code và bị lỗi khi xuất Text. Kiểm tra lại thì nghi là lỗi tại những kí hiệu lạ mà Nhoc bí :P . Snowman.hms có thể giải thích những kí hiệu cho Nhoc được ko?

Cho (màu đỏ) nhưng nó ko đỏ :wub: :

("$1"      . "\\\\(\\\\[ACcFfHLlOopQTW])|\\\\[ACcFfHLlOopQTW][^\\\\;]*;|\\\\[ACcFfHLlOopQTW]")

.....

(_replace "\\\\" "\032" (_replace "\\$1$2$3" "(\\\\[ACcFfHLlOoPpQSTW])|({)|(})" str))
(_replace "\\"   "\032" str)
(foreach pair
                               '(
                                    ("\032"    . "\\\\\\\\")
                                    (" "       . "\\\\P|\\n|\\t")
                                    ("$1"      . "\\\\(\\\\[ACcFfHLlOopQTW])|\\\\[ACcFfHLlOopQTW][^\\\\;]*;|\\\\[ACcFfHLlOopQTW]")
                                    ("$1$2/$3" . "([^\\\\])\\\\S([^;]*)[/#\\^]([^;]*);")
                                    ("$1$2"    . "\\\\(\\\\S)|[\\\\](})|}")
                                    ("$1"      . "[\\\\]({)|{")
                                )
                                (setq str (_replace (car pair) (cdr pair) str))
                            )
                            (if mtx
                                (_replace "\\\\" "\032" (_replace "\\$1$2$3" "(\\\\[ACcFfHLlOoPpQSTW])|({)|(})" str))
                                (_replace "\\"   "\032" str)
                            )
                        )
                    )
                )
            )

  • 0

#35 snowman.hms

snowman.hms

    biết vẽ ellipse

  • Members
  • PipPip
  • 55 Bài viết
Điểm đánh giá: 26 (tàm tạm)

Đã gửi 26 May 2015 - 09:29 PM

Các ký tự loằng ngoằng đó là "MText formatting codes" nhé :)

 

http://docs.autodesk...umber=d0e123454

 

PS: bạn cứ thử entget một mtext bất kỳ xem, sẽ thấy những ký tự đó ở (dxf 1 và/hoặc dxf 3)

 

Formatting%20Codes.png


  • 2

#36 nhoclangbac

nhoclangbac

    biết vẽ circle

  • Members
  • PipPip
  • 38 Bài viết
Điểm đánh giá: 3 (bình thường)

Đã gửi 26 May 2015 - 09:44 PM

Các ký tự loằng ngoằng đó là "MText formatting codes" nhé :)

 

http://docs.autodesk...umber=d0e123454

 

PS: bạn cứ thử entget một mtext bất kỳ xem, sẽ thấy những ký tự đó ở (dxf 1 và/hoặc dxf 3)

 

Formatting%20Codes.png

Great! Thanks, Snowman! Dường như Snowman là Việt Kiều thì phải :P , thấy Snowman post bài có thời điểm 3h sáng ở Vietnam nhưng đó là thời điểm múi giờ làm việc ở nước ngoài :lol:


  • 0

#37 Tr.CongSon

Tr.CongSon

    biết lệnh array

  • Members
  • PipPipPip
  • 183 Bài viết
Điểm đánh giá: 40 (tàm tạm)

Đã gửi 26 May 2015 - 10:19 PM

Snowman toàn đọc bằng English koo hè^^

Có trang nào = vietnamese không,cho a em tham khảo với Snowman ơi ^^

Đọc toàn English đau đầu lắm^^


  • 0

#38 snowman.hms

snowman.hms

    biết vẽ ellipse

  • Members
  • PipPip
  • 55 Bài viết
Điểm đánh giá: 26 (tàm tạm)

Đã gửi 26 May 2015 - 10:24 PM

Snowman toàn đọc bằng English koo hè^^

Có trang nào = vietnamese không,cho a em tham khảo với Snowman ơi ^^

Đọc toàn English đau đầu lắm^^

Nếu có thì bạn phải hỏi các cao thủ trên diễn đàn, chứ mình thì chịu rồi :)

Mà có đau vài lần thì sau sẽ miễn nhiêm thôi mà :)


  • 0

#39 Chutuyen

Chutuyen

    biết vẽ circle

  • Members
  • PipPip
  • 36 Bài viết
Điểm đánh giá: -3 (bình thường)

Đã gửi 27 May 2015 - 08:08 AM

y t la chon nhieu dim mot luc mà ????


  • 0

#40 dunguss3581

dunguss3581

    biết lệnh rotate

  • Advance Member
  • PipPipPip
  • 139 Bài viết
Điểm đánh giá: 5 (bình thường)

Đã gửi 27 May 2015 - 04:22 PM

(setq x (cond ((getint (strcat "\nSpecify a Value: <" (if x (itoa x) (itoa defaul-value))">  :")))
     (x)
     (defaul-value)
     ))
Note: x phải là biến hệ thống

ông bạn ơi. khai báo biến x thế nào? khi chương trình chạy lần đầu bị lỗi do biến x chưa có giá trị.


  • 0