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

[GIÚP ĐỠ] LISP CẮT DIM ĐO ĐOẠN CUNG TRÒN

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

Em có 1 bản vẽ, em đo kích thước rồi nhưng không thẻ nào cắt dim được. Em dùng lisp cắt dim bình thường ạ. Có cao nhân nào chỉ dùm em vấn đề này với nhé. Hoăc có cách nào giải quyết vấn đề này không ạ ? E  cám ơn cả nhà nhiều

vi du test.dwg

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

+ Lisp cắt Dim hiện tại chỉ áp dụng cho đường kích thước thẳng hoặc xiên ( DLI hoặc DAL ). Không áp dụng cho đường kích thước đo cung tròn DAR. 

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
2 giờ trước, Danh Cong đã nói:

+ Lisp cắt Dim hiện tại chỉ áp dụng cho đường kích thước thẳng hoặc xiên ( DLI hoặc DAL ). Không áp dụng cho đường kích thước đo cung tròn DAR. 

vậy có cách nào mình cắt được đường dim cung tròn không bác. em nghĩ tới explore dim ra rồi trim nhưng mà thấy nó ngộ ngộ sao quá T_T

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

Hiện tại chưa có lisp nào thực hiện vấn đề này, mà nói chung cũng không khả thi để viết.

Cách đơn giản nhất là bật Property ( Ctrl+1), chỉnh thông số sau cho phù hợp.... dĩ nhiên phải chỉnh bằng tay từng Dim hoặc dùng lệnh "MA" để cho các Dim na ná nhau rồi chỉnh tiếp.

 

Cadvietdar.png

  • Like 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 dùng thử xem co được  không. Lệnh là SD2

(vl-load-com)
(defun c:sd2 (/ lstd en hd objTStyle objDoc tstyle m)
  (setvar "cmdecho" 0)

  (princ "\nChon cac DIM can sap xep")
  (setq	lstd (vl-remove-if
	       'listp
	       (mapcar 'cadr (ssnamex (ssget '((0 . "DIMENSION")))))
	     )
  )
  (setq m (getreal "\nHe so nhan: "));dung de chinh chieu dai chan dim theo ty le chieu cao text
  (setq
    en	      (vlax-ename->vla-object (car lstd))
    tstyle    (vla-get-textstyle en)
    objDoc    (vla-get-activedocument (vla-get-application en))
    objTStyle (vla-item (vla-get-textstyles objdoc) tstyle)
    hd	      (vla-get-height objTStyle)
  )
  (if (= hd 0.0)
    (setq hd (vla-get-Textheight en))
  )
  (foreach e1 lstd
    (setq en (vlax-ename->vla-object e1))
    (vla-put-extlinefixedlensuppress en :vlax-true)
    (vla-put-extlinefixedlen en (* m hd))
  )
  (princ)
)

 

  • Like 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

ko biết ý chủ thớt có p hải vậy không nhỉ?

image.png.9a2f54a406032ddc81c3c39899bccf5d.png

 

Nếu đúng thì dùng lệnh DimBreak là được thôi mà

  • Like 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
Vào lúc 8/1/2018 tại 23:06, tien2005 đã nói:

Bạn dùng thử xem co được  không. Lệnh là SD2


(vl-load-com)
(defun c:sd2 (/ lstd en hd objTStyle objDoc tstyle m)
  (setvar "cmdecho" 0)

  (princ "\nChon cac DIM can sap xep")
  (setq	lstd (vl-remove-if
	       'listp
	       (mapcar 'cadr (ssnamex (ssget '((0 . "DIMENSION")))))
	     )
  )
  (setq m (getreal "\nHe so nhan: "));dung de chinh chieu dai chan dim theo ty le chieu cao text
  (setq
    en	      (vlax-ename->vla-object (car lstd))
    tstyle    (vla-get-textstyle en)
    objDoc    (vla-get-activedocument (vla-get-application en))
    objTStyle (vla-item (vla-get-textstyles objdoc) tstyle)
    hd	      (vla-get-height objTStyle)
  )
  (if (= hd 0.0)
    (setq hd (vla-get-Textheight en))
  )
  (foreach e1 lstd
    (setq en (vlax-ename->vla-object e1))
    (vla-put-extlinefixedlensuppress en :vlax-true)
    (vla-put-extlinefixedlen en (* m hd))
  )
  (princ)
)

 

Mr tien2005, tại sao không cho lisp pick điểm như những  lisp khá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
Vào lúc 8/1/2018 tại 23:33, dinhvantrang đã nói:

ko biết ý chủ thớt có p hải vậy không nhỉ?

image.png.9a2f54a406032ddc81c3c39899bccf5d.png

 

Nếu đúng thì dùng lệnh DimBreak là được thôi mà

Không phải đâu ạ. kiểu giống như cútdim bình thường ý

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
Vào lúc 8/1/2018 tại 17:14, Danh Cong đã nói:

Hiện tại chưa có lisp nào thực hiện vấn đề này, mà nói chung cũng không khả thi để viết.

Cách đơn giản nhất là bật Property ( Ctrl+1), chỉnh thông số sau cho phù hợp.... dĩ nhiên phải chỉnh bằng tay từng Dim hoặc dùng lệnh "MA" để cho các Dim na ná nhau rồi chỉnh tiếp.

 

Cadvietdar.png

cảm ơn bạn nhiều nghen

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
Vào lúc 8/1/2018 tại 23:06, tien2005 đã nói:

Bạn dùng thử xem co được  không. Lệnh là SD2


(vl-load-com)
(defun c:sd2 (/ lstd en hd objTStyle objDoc tstyle m)
  (setvar "cmdecho" 0)

  (princ "\nChon cac DIM can sap xep")
  (setq	lstd (vl-remove-if
	       'listp
	       (mapcar 'cadr (ssnamex (ssget '((0 . "DIMENSION")))))
	     )
  )
  (setq m (getreal "\nHe so nhan: "));dung de chinh chieu dai chan dim theo ty le chieu cao text
  (setq
    en	      (vlax-ename->vla-object (car lstd))
    tstyle    (vla-get-textstyle en)
    objDoc    (vla-get-activedocument (vla-get-application en))
    objTStyle (vla-item (vla-get-textstyles objdoc) tstyle)
    hd	      (vla-get-height objTStyle)
  )
  (if (= hd 0.0)
    (setq hd (vla-get-Textheight en))
  )
  (foreach e1 lstd
    (setq en (vlax-ename->vla-object e1))
    (vla-put-extlinefixedlensuppress en :vlax-true)
    (vla-put-extlinefixedlen en (* m hd))
  )
  (princ)
)

 

hay quá.. cám ơn bạn nhaé

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  

×