Chuyển đến nội dung
Diễn đàn CADViet

laivanyen

Thành viên
  • Số lượng nội dung

    38
  • Đã tham gia

  • Lần ghé thăm cuối

Bài đăng được đăng bởi laivanyen


  1. Hề hề hề,

    Phải chăng bạn muốn chọn tất cả các cọc trên bản vẽ mặt bằng????

    Nếu đúng vậy thì vấn đề bạn đặt ra thật là ......... VẼ HƯƠU....

    Các cọc này được bạn đưa vào bản vẽ ở dạng block. Mà các block này có tên là coc. Vậy thì bạn có thể dùng filter hay quick select mà chọn nó chứ cần gì phải lisp liếc cho nó...... dở hơi ..... hả bạn.

    Cái lisp mình viết chỉ để chọn các đối tượng đơn mà bạn vẽ bởi cái linetype mà bạn sẽ phải nhập tên khi lisp hỏi mà thôi. Đúng là với cái block này của bạn thì nó chịu không thể nhận ra được rồi.

    Bạn hãy xem lại vấn đề của bạn nhé...

     

    Vâng thì em chỉ muốn chọn đối tượng đơn thôi. Em sử dụng lisp của bác rồi nhưng không được. Bác check lại giúp em với a!


  2. Hề hề hề,

    Chưa hiểu ý bạn lắm. Phải chăng trên bản vẽ của bạn có nhiều linetype được sử dụng cho các đường hidden và center?????

    Hay là bạn muốn chọn các đối tượng được vẽ bởi các đường hidden và center ???? Có nhẽ bạn nên post một cái bản vẽ của bạn lên và nói rõ bạn muốn gì chứ mình thấy khó hiểu quá.....

    Phiền bạn chút xíu ha.

     

    Vâng đúng rồi ạ, ý em là muốn chọn các đối tượng được vẽ bởi các đường hidden và center. Bản vẽ đây ạ !

    http://www.cadviet.com/upfiles/3/2_1.dwg


  3. Hề hề hề,

    Không biết cái này bạn có xài được không hỉ???

    (defun c:slblt ()
    (setq ss (ssget (list (cons 0 "*LINE,CIRCLE,ELLIPSE")))
           i 0
           n (sslength ss)
           sslt (ssadd)
           lt (getstring t "\n Nhap ten linetype can chon: ")
    )
    (while (< i n)
          (setq en (ssname ss i)
                  els (entget en)
                  la (cdr (assoc 8 els))
          )
          (if (/= (cdr (assoc 6 els)) nil)
              (if (= (cdr (assoc 6 els)) lt)
                  (setq sslt (ssadd en sslt))
              )
              (if (= (cdr (assoc 6 (tblsearch "layer" la))) lt)
                  (setq sslt (ssadd en sslt))
              )
           )
           (setq i (1+ i))
    )
    sslt
    (sssetfirst nil sslt)
    (princ)
    )
    

    Chúc bạn vui.

     

    Không phải rùi Bác ơi ! ý em là chọn đường hidden, center..(theo linetype ạ !) mà không phân biệt LINE,CIRCLE,ELLIPSE


  4. *Hai đối tượng có hình dáng giống hệt nhau thì vẩn có 2 trường hợp xảy ra:

    -1 đối tượng có kiểu đường là bylayer và layer đó có kiểu đường là (chấm gạch chẳng hạn).

    -1 đối tượng có kiểu đường là chấm gạch và không phải bylayer.

    *Bạn yêu cầu viết kiểu gì Cứ hình dáng giống nhau thì chọn tất không kể bylayer hay ko hay là chỉ chọn đối tượng cùng kiểu đường và ko byleyer?.

     

    Yêu cầu của em là: Chọn các line hoặc pline có chung đặc điểm linetype thôi ạ !

×