Bạn copy nội dung và tạo file lisp hay tải file về cũng được!
(DEFUN C:exn ( )
(princ "\nPHAM QUOC DUY Binh Son - Quang ngai")
(Prompt "\nChon doi tuong dich den")
(setq luubatdiem (getvar "osmode"))
(setvar "osmode" 0)
(Setq dichkeodai (Ssget))
(setq a (getpoint "\nDiem thu nhat: "))
(setq b (getcorner a"\nDiem thu hai: "))
(setq c (list (car a) (cadr b)))
(setq d (list (car b) (cadr a)))
(command ".extend" dichkeodai "" "f" a b c d b c a d "" "")
(while (setq ab (getpoint "\nDiem thu nhat
(setq bb (getcorner ab"\nDiem thu hai: "))
(setq cb (list (car ab) (cadr bb)))
(setq db (list (car bb) (cadr ab)))
(command ".extend" dichkeodai "" "f" ab bb cb db bb cb ab db "" "")
)
(setvar "osmode" luubatdiem)
(princ)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(DEFUN C:trn ( )
(princ "\nPHAM QUOC DUY Binh Son - Quang ngai")
(Prompt "\nChon doi tuong cat")
(setq luubatdiem (getvar "osmode"))
(setvar "osmode" 0)
(Setq dichkeodai (Ssget))
(setq a (getpoint "\nDiem thu nhat: "))
(setq b (getcorner a"\nDiem thu hai: "))
(setq c (list (car a) (cadr b)))
(setq d (list (car b) (cadr a)))
(command ".trim" dichkeodai "" "f" a b c d b c a d "" "")
(while (setq ab (getpoint "\nDiem thu nhat
(setq bb (getcorner ab"\nDiem thu hai: "))
(setq cb (list (car ab) (cadr bb)))
(setq db (list (car bb) (cadr ab)))
(command ".trim" dichkeodai "" "f" ab bb cb db bb cb ab db "" "")
)
(setvar "osmode" luubatdiem)
(princ)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Tênh lệnh:
EXN : (extend)
TRN : (trim)
Lisp này hay quá . Nhưng em chưa hiểu rõ lắm Anh Duy chỉ giúp em nhé
Trả lờiXóatừ đoạn (command ".extend"....trở đi khó hiểu lắm
Cám ơn anh .
*(command ".trim" dichkeodai "" "f" a b c d b c a d "" "")
Trả lờiXóaThực hiện lệnh extend. Chọn đối tượng đích đến là dichkeodai (mình chọn được ở dòng (Setq dichkeodai (Ssget)) ấy), enter kết thúc việc chọn đối tượng đích. Chọn tham số f nghĩa là sẻ chọn đối tượng muốn kéo dài theo kiểu f (hàng rào cắt qua đối tượng), vẽ hàng rào là hình chử nhật abcd và đường chéo ac và bd mục đích cho các đối tượng nằn trong hình chữ nhật tạo bởi 2 điểm mình chọn sẽ được chọn và được kéo dài tạo hiệu ứng giống cad2007.
*(while
là vòng lặp khi dùng vóng lặp này ko kèm theo điều kiện phía sau thì vòng lặp được thực hiện đến khi mình enter sẽ kết thúc. Bạn xem thêm về hàm này bên hướng dẩn viết lisp.
Ah ah ah Em hiểu rồi ha ha .
Trả lờiXóaCám ơn anh nhiều Chúc anh một ngày vui vẻ nhé ^^