Chuyển đến nội dung
Diễn đàn CADViet
  • Thông báo

    • Nguyen Hoanh

      CADViet đã hoàn tất nâng cấp   14/09/2017

      Chào các bạn, CADViet đã hoàn tất việc nâng cấp lên phiên bản mới. Tất cả các chức năng đã hoạt động theo kỳ vọng của ban quản trị. Nếu có vấn đề gì cần phản hồi, các bản post ở đây nhé: Trân trọng, Nguyễn Hoành.
Đăng nhập để thực hiện theo  
jangboko

Nhờ Sửa Lisp Tính Chu Vi

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

jangboko    3

nhờ các bác sửa hộ em cái lisp tính chu vi này em đã mót ở trên diễn đàn 

(defun add_mline ()

  (foreach e_record_sub	e_record

    (cond ((= 10 (car e_record_sub))

	   (setq pt1	   (cdr e_record_sub)

		 mline_len 0.0

	   )

	  )

	  ((= 11 (car e_record_sub))

	   (setq pt2	   (cdr e_record_sub)

		 mline_len (+ mline_len (distance pt2 pt1))

		 pt1	   pt2

	   )

	  )

    )

  )

  (setq tot_len (+ tot_len mline_len))

  (ssdel e_name ss)

)

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;



;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

(defun C:cl (/ tot_len ss e_name e_record e_type)

  (setq tot_len 0.0)

  (setq ss (ssget))

  (if (null ss)

    (exit)

  )

  (while (> (sslength ss) 0)

    (setq e_name (ssname ss 0))

    (setq e_record (entget e_name))

    (setq e_type (cdr (assoc '0 e_record)))

    (cond ((wcmatch e_type "LINE,ARC,CIRCLE,POLYLINE,LWPOLYLINE,ELLIPSE,SPLINE")

	   (command "lengthen" e_name "")

	   (setq tot_len (+ tot_len (getvar "PERIMETER")))

	   (ssdel e_name ss)

	  )

	  ((wcmatch e_type "MLINE") (add_mline))

	  (e_type (ssdel e_name ss))

    )

  )

  (prompt (strcat "\nTotal length is: " (rtos tot_len 2 2)))

  (princ)

)
 

nhờ các bác bổ xung thêm cho em phần ghi kết quả ra text. Em cám ơn các bác nhiều nhiều 

P/s: em đã cố tìm trên diễn đàn cái lisp tính chu vi mà có ghi kết quả ra text mà không thấy, nên đành mạo muội nhờ các bác. Chúc các bác luôn mạnh khỏe để các anh em dùng cad được nhờ.

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
jangboko    3

hề hề, cám ơn bác, em đã tìm thấy thứ mình cần :)). Cái bài bác đưa em đã đọc qua rồi, thấy bài đó viết về lisp tính diện tích UDT nên em chỉ đọc lướt qua, do đó sót bài bác post.  cảm ơn bác nhiều

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  

×