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

Nhờ các cao thủ giúp em với....

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

Em muốn thống kê khoảng cách tường đoạn thẳng của 1 polyline "PL"(polyline là các đoạn thẳng gấp khúc),theo thứ tự từ đầu đến cuối...(qua excel thì càng tốt)

Ví dụ: PL là ABCDE có AB; BC; CD; DE;thì theo thứ tự lan luot la: 1;2;3;4.

Xin cảm ơn trước!

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

Mình tìm hiểu trên diễn đàn này, giờ làm được rồi bạn à. Có 1 Pro đã viết ra đoạn LISP CAD này.

- Nó áp dụng cho các đường line thôi, do đó nếu là polyline thì bạn nên phá nó thành các line.

- Sau khi load lisp, bạn gõ lệnh HA:

- Mình upload file lisp này lên nhưng nó bị lỗi gì không được :( , nhưng nó có nội dung như sau:

(defun C:HA( / entlst lst fn pw)
(princ "\nChon cac doi tuong Line can xuat ra file...")
(setq entlst (vl-remove-if 'listp (mapcar 'cadr (ssnamex (ssget (list (cons 0 "LINE")))))))
(foreach ent entlst
;  (setq lst (cons (list (cdr (assoc 8 (entget ent))) (distance (cdr (assoc 10 (entget ent))) (cdr (assoc 11 (entget ent))))) lst)))
  (setq lst (cons (list (cdr (assoc 8 (entget ent))) (atof (rtos (distance (cdr (assoc 10 (entget ent))) (cdr (assoc 11 (entget ent)))) 2 6))) lst)))
(setq lst (LM:ListOccurrences lst))
(setq fn (getfiled "Chon file de xuat ket qua" "" "xls" 1))
(setq pw (open fn "w"))
(write-line (strcat "Chieu dai" "\t" "So luong" "\t" "Layer") pw)
(foreach n lst
  (write-line (strcat (vl-prin1-to-string (cadr (car n))) "\t" (itoa (cdr n)) "\t" (car (car n))) pw))
(close pw) )
(defun LM:ListOccurrences (lst);Thank Lee Mac
(if lst
  (cons
   (cons (car lst) (- (length lst) (length (vl-remove (car lst) (cdr lst)))))
   (LM:ListOccurrences (vl-remove (car lst) (cdr lst))))))

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

×