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

[Nhờ viết lisp]Rải và đánh số thứ tự cọc

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

Cái này viết thêm cho bạn nè

(defun c:dscoc(/ ss i Tue-dxf Tue-ss-list)
(defun Tue-dxf (dxf ename)(cdr(assoc dxf (entget ename))))
(defun Tue-ss-list (L-ss-vlaobj / n L Lst ssg vlaobj)
 (mapcar 'set '(ssg vlaobj) L-ss-vlaobj)
 (setq L (sslength ssg))
 (Repeat L
   	(setq ename (ssname ssg (setq L (1- L))))
   (setq Lst (cons (if vlaobj (vlax-ename->vla-object ename) ename) Lst))
 )
)
 (setq i 0)
 (princ "\n Chon cac coc nho can danh so : ")
 (if (setq ss (ssget '((0 . "CIRCLE") (40 . 0.25))))
     (foreach x (reverse (Tue-ss-list  (list ss)))
  	(entmake (list (cons 0 "TEXT") (cons 1 (itoa (setq i (1+ i)))) (cons 40 0.30)
  	       (cons 10 (mapcar '+ (Tue-dxf 10 x) '(0.0 0.5 0.0)))
  	       (cons 11 (mapcar '+ (Tue-dxf 10 x) '(0.0 0.5 0.0)))
  	))
   )
 )
)

-> Lisp lọc chọn các cọc nhỏ và đánh số thứ tự như file kèm theo

 

Cám ơn sự giúp đỡ của anh em.

Lisp "dscoc" đánh số rất hay nhưng vẫn chưa thỏa mãn với câu hỏi của mình.

Ví dụ, mình nhận được bản vẽ thiết kế với 200 cọc (bản vẽ pdf hoặc bản vẽ giấy), sau đó mình vẽ lại bản vẽ đó, tính được tọa độ các cọc lưu thành file excel rồi, nếu lấy lisp "dscoc" áp dụng vào thì tên cọc không theo thứ tự với bản vẽ thiết kế (không khớp với thứ tự cọc theo list tọa độ).

Anh em nào có lisp mà gắn được mối liên quan giữa tọa độ vào tên cọc, sau đó vẽ luôn ra bản vẽ cọc kèm theo tên cọc luôn.

Mình không biết về lập trình hay viết lisp gì cả nên nhờ anh em giúp.

Mình gửi anh em file excel tọa độ làm ví dụ

http://www.cadviet.com/upfiles/3/113288_file_toa_do.rar

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

 

Cám ơn sự giúp đỡ của anh em.

Lisp "dscoc" đánh số rất hay nhưng vẫn chưa thỏa mãn với câu hỏi của mình.

Ví dụ, mình nhận được bản vẽ thiết kế với 200 cọc (bản vẽ pdf hoặc bản vẽ giấy), sau đó mình vẽ lại bản vẽ đó, tính được tọa độ các cọc lưu thành file excel rồi, nếu lấy lisp "dscoc" áp dụng vào thì tên cọc không theo thứ tự với bản vẽ thiết kế (không khớp với thứ tự cọc theo list tọa độ).

Anh em nào có lisp mà gắn được mối liên quan giữa tọa độ vào tên cọc, sau đó vẽ luôn ra bản vẽ cọc kèm theo tên cọc luôn.

Mình không biết về lập trình hay viết lisp gì cả nên nhờ anh em giúp.

Mình gửi anh em file excel tọa độ làm ví dụ

http://www.cadviet.c...file_toa_do.rar

Hề hề hề,

Theo thiển ý cá nhân, vấn đề bạn đặt ra không quá khó. Nếu bạn đồng ý phương án sau đây thì mình tin rằng sẽ làm được.

1/- Bạn hãy tạo các block cọc và đánh số các block này. (Nhất là khi bạn thường xuyên phải sử dụng tới việc vẽ cọc có cấu trúc tương tự nhau)

2/- Dựa vào file excel để insert các block này với tên tuổi và tọa độ của cọc vào bản vẽ.

Nếu bạn đồng ý thì hãy gửi ví dụ một vài bản vẽ các block cọc của bạn, mình sẽ giúp viết phần lisp insert các bolock này vào bản vẽ.

Hề hề hề,...

PS: Trên diễn đàn đang có lớp học online về kỹ thuật lập trình bằng Autolisp. nếu bạn quan tâm và muốn học có thể tham gia vào đó. Điều này sẽ có lợi cho công việc của bạn nhiều hơn nhất là khi bạn phải làm việc nhiều với lisp.

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  

×