Chuyển đến nội dung
Diễn đàn CADViet
Đăng nhập để thực hiện theo  
huaductiep

Nhờ các bác sửa Lisp Copy đối tượng tới nhiều đường Polyline cho trước.

Các bài được khuyến nghị

 64997_copy_to_pl.jpg

 

File đính kèm:
+File Cad: http://www.mediafire.com/download/ir67xkqepjp7yb2/Copy_to_PL.dwg
+File Lisp cần sửa: http://www.mediafire.com/download/gey5r63jnaa1ubp/Copy_to_PL.lsp
 Mình có rất nhiều đường polyline như hình bên trái và cần copy 1 đối tượng mặc định tới các điểm End Point trên hàng loạt đường PL đó. Kết quả hiển thị ở hình bên phải.


 Hiện tại mình đã sưu tầm được 1 Lisp trên Cadviet mình có thể copy tới từng đường PL. Nhưng như thế vẫn rất lâu. Nên nay mình mong các mọi người sửa giúp lisp này với các nội dung như sau:

+ Lệnh: c2pl
+ Chọn đối tượng muốn rải…

+ Chọn điểm chuẩn của đối tượng..

+ Chọn các đối tượng làm đường dẫn.

+ Ok. Kết thúc.
Cám ơn mọi người đã đọc bài :)

  • Vote tăng 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Bạn thử lisp này thử nhé:

(defun GetVer (e / i L)
(setq i 0 L nil)
(repeat (fix (+ (vlax-curve-getEndParam e) 1))
(setq L (append L (list (vlax-curve-getPointAtParam e i))))
(setq i (1+ i))
)
L
)
(defun C:ttt(/ ss_rai pt_rai ss n e lstPt x)
(princ "\nChon doi tuong muon rai")
(setq ss_rai (ssget))
(setq pt_rai (getpoint "\nChon diem chen"))
(princ "\nChon doi tuong duong dan")
(setq ss (ssget (list (cons 0 "*POLYLINE"))))
(repeat (setq n (sslength ss))
(setq e (ssname ss (setq n (1- n))))
(setq lstPt (GetVer e))
(foreach x lstPt (command "copy" ss_rai "" pt_rai x))
)
(princ)
)
(defun GetVer (e / i L)
(setq i 0 L nil)
(repeat (fix (+ (vlax-curve-getEndParam e) 1))
(setq L (append L (list (vlax-curve-getPointAtParam e i))))
(setq i (1+ i))
)
L
)
(defun C:ttt(/ ss_rai pt_rai ss n e lstPt x)
(princ "\nChon doi tuong muon rai")
(setq ss_rai (ssget))
(setq pt_rai (getpoint "\nChon diem chen"))
(princ "\nChon doi tuong duong dan")
(setq ss (ssget (list (cons 0 "*POLYLINE"))))
(repeat (setq n (sslength ss))
(setq e (ssname ss (setq n (1- n))))
(setq lstPt (GetVer e))
(foreach x lstPt (command "copy" ss_rai "" pt_rai x))
)
(princ)
)
(defun GetVer (e / i L)
(setq i 0 L nil)
(repeat (fix (+ (vlax-curve-getEndParam e) 1))
(setq L (append L (list (vlax-curve-getPointAtParam e i))))
(setq i (1+ i))
)
L
)
(defun C:ttt(/ ss_rai pt_rai ss n e lstPt x)
(princ "\nChon doi tuong muon rai")
(setq ss_rai (ssget))
(setq pt_rai (getpoint "\nChon diem chen"))
(princ "\nChon doi tuong duong dan")
(setq ss (ssget (list (cons 0 "*POLYLINE"))))
(repeat (setq n (sslength ss))
(setq e (ssname ss (setq n (1- n))))
(setq lstPt (GetVer e))
(foreach x lstPt (command "copy" ss_rai "" pt_rai x))
)
(princ)
)
(defun GetVer (e / i L)
(defun GetVer (e / i L)
(setq i 0 L nil)
(repeat (fix (+ (vlax-curve-getEndParam e) 1))
(setq L (append L (list (vlax-curve-getPointAtParam e i))))
(setq i (1+ i))
)
L
)
(defun C:ttt(/ ss_rai pt_rai ss n e lstPt x)
(princ "\nChon doi tuong muon rai")
(setq ss_rai (ssget))
(setq pt_rai (getpoint "\nChon diem chen"))
(princ "\nChon doi tuong duong dan")
(setq ss (ssget (list (cons 0 "*POLYLINE"))))
(repeat (setq n (sslength ss))
(setq e (ssname ss (setq n (1- n))))
(setq lstPt (GetVer e))
(foreach x lstPt (command "copy" ss_rai "" pt_rai x))
)
(princ)

(vl-load-com)

(defun GetVer (e / i L)
(setq i 0 L nil)
(repeat (fix (+ (vlax-curve-getEndParam e) 1))
(setq L (append L (list (vlax-curve-getPointAtParam e i))))
(setq i (1+ i))
)
L
)
(defun C:ttt(/ ss_rai pt_rai ss n e lstPt x)
(princ "\nChon doi tuong muon rai")
(setq ss_rai (ssget))
(setq pt_rai (getpoint "\nChon diem chen"))
(princ "\nChon doi tuong duong dan")
(setq ss (ssget (list (cons 0 "*POLYLINE"))))
(repeat (setq n (sslength ss))
(setq e (ssname ss (setq n (1- n))))
(setq lstPt (GetVer e))
(foreach x lstPt (command "copy" ss_rai "" pt_rai x))
)
(princ)
)

)
(defun GetVer (e / i L)
(setq i 0 L nil)
(repeat (fix (+ (vlax-curve-getEndParam e) 1))
(setq L (append L (list (vlax-curve-getPointAtParam e i))))
(setq i (1+ i))
)
L
)
(defun C:ttt(/ ss_rai pt_rai ss n e lstPt x)
(princ "\nChon doi tuong muon rai")
(setq ss_rai (ssget))
(setq pt_rai (getpoint "\nChon diem chen"))
(princ "\nChon doi tuong duong dan")
(setq ss (ssget (list (cons 0 "*POLYLINE"))))
(repeat (setq n (sslength ss))
(setq e (ssname ss (setq n (1- n))))
(setq lstPt (GetVer e))
(foreach x lstPt (command "copy" ss_rai "" pt_rai x))
)
(princ)
 
(setq i 0 L nil)
(repeat (fix (+ (vlax-curve-getEndParam e) 1))
(setq L (append L (list (vlax-curve-getPointAtParam e i))))
(setq i (1+ i))
)
L
)
(defun C:ttt(/ ss_rai pt_rai ss n e lstPt x)
(princ "\nChon doi tuong muon rai")
(setq ss_rai (ssget))
(setq pt_rai (getpoint "\nChon diem chen"))
(princ "\nChon doi tuong duong dan")
(setq ss (ssget (list (cons 0 "*POLYLINE"))))
(repeat (setq n (sslength ss))
(setq e (ssname ss (setq n (1- n))))
(setq lstPt (GetVer e))
(foreach x lstPt (command "copy" ss_rai "" pt_rai x))
)
(princ)
 
(defun GetVer (e / i L)
(setq i 0 L nil)
(repeat (fix (+ (vlax-curve-getEndParam e) 1))
(setq L (append L (list (vlax-curve-getPointAtParam e i))))
(setq i (1+ i))
)
L
)
(defun C:ttt(/ ss_rai pt_rai ss n e lstPt x)
(princ "\nChon doi tuong muon rai")
(setq ss_rai (ssget))
(setq pt_rai (getpoint "\nChon diem chen"))
(princ "\nChon doi tuong duong dan")
(setq ss (ssget (list (cons 0 "*POLYLINE"))))
(repeat (setq n (sslength ss))
(setq e (ssname ss (setq n (1- n))))
(setq lstPt (GetVer e))
(foreach x lstPt (command "copy" ss_rai "" pt_rai x))
)
(princ)
 
(defun GetVer (e / i L)
(setq i 0 L nil)
(repeat (fix (+ (vlax-curve-getEndParam e) 1))
(setq L (append L (list (vlax-curve-getPointAtParam e i))))
(setq i (1+ i))
)
L
)
(defun C:ttt(/ ss_rai pt_rai ss n e lstPt x)
(princ "\nChon doi tuong muon rai")
(setq ss_rai (ssget))
(setq pt_rai (getpoint "\nChon diem chen"))
(princ "\nChon doi tuong duong dan")
(setq ss (ssget (list (cons 0 "*POLYLINE"))))
(repeat (setq n (sslength ss))
(setq e (ssname ss (setq n (1- n))))
(setq lstPt (GetVer e))
(foreach x lstPt (command "copy" ss_rai "" pt_rai x))
)
(princ)
 
(defun GetVer (e / i L)
(setq i 0 L nil)
(repeat (fix (+ (vlax-curve-getEndParam e) 1))
(setq L (append L (list (vlax-curve-getPointAtParam e i))))
(setq i (1+ i))
)
L
)
(defun C:ttt(/ ss_rai pt_rai ss n e lstPt x)
(princ "\nChon doi tuong muon rai")
(setq ss_rai (ssget))
(setq pt_rai (getpoint "\nChon diem chen"))
(princ "\nChon doi tuong duong dan")
(setq ss (ssget (list (cons 0 "*POLYLINE"))))
(repeat (setq n (sslength ss))
(setq e (ssname ss (setq n (1- n))))
(setq lstPt (GetVer e))
(foreach x lstPt (command "copy" ss_rai "" pt_rai x))
)
(princ)
 
(defun GetVer (e / i L)
(setq i 0 L nil)
(repeat (fix (+ (vlax-curve-getEndParam e) 1))
(setq L (append L (list (vlax-curve-getPointAtParam e i))))
(setq i (1+ i))
)
L
)
(defun C:ttt(/ ss_rai pt_rai ss n e lstPt x)
(princ "\nChon doi tuong muon rai")
(setq ss_rai (ssget))
(setq pt_rai (getpoint "\nChon diem chen"))
(princ "\nChon doi tuong duong dan")
(setq ss (ssget (list (cons 0 "*POLYLINE"))))
(repeat (setq n (sslength ss))
(setq e (ssname ss (setq n (1- n))))
(setq lstPt (GetVer e))
(foreach x lstPt (command "copy" ss_rai "" pt_rai x))
)
(princ)
)
  • Vote tăng 2

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

alo các bạn...bạn nào có file thiết kế nhà xưởng( kho chứa gạo) cho mình xin với, có bản đày đủ thì càng tốt...

kích thướt như sau: ngang 35m... dài 50m... cao đỉnh 15m... hong cao 11m... ai có làm ơn cho mình xin với nhe...mình đang cần gấp lắm... cám ơn mọi người...

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay

Đăng nhập để thực hiện theo  

×