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

Lỗi khi sử dụng lisp cad tính diện tích

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

Em có sử dụng lisp cad tính diện tích:

Lisp được tính bằng cách tích điểm vào vùng kín, nhưng dữ liệu hiển thị sau khi tích điểm là một chữ số sau dấu "."

Xin được sự giúp đỡ của các anh/chị để có thể hiển thị sau dấu phẩy 3 hoặc 4 chữ số sau dấu "."

Em xin cảm ơn.

Em có đính kèm bản vẽ và lisp:

TDT.LSP

xem.dwg

 

aaa.png

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ìm các dòng này (ở phía cuối mỗi lệnh của Lisp ý )

(command "text" "m" pt2  "0" (rtos dtl 2 1))
    (command "text" "m" pt2 "1.5" "0" (strcat (rtos dtl  2 1) "m2"))

Thay chỗ số 1 thành số 3 (hoặc số 4) là được

 

(command "text" "m" pt2  "0" (rtos dtl 2 1))
    (command "text" "m" pt2 "1.5" "0" (strcat (rtos dtl  2 1) "m2"))

 

 

thành 

 

(command "text" "m" pt2  "0" (rtos dtl 2 3))
    (command "text" "m" pt2 "1.5" "0" (strcat (rtos dtl  2 3) "m2"))

  • 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âng em cảm ơn anh.

Anh cho em hỏi thêm chút xíu.

Khi em load lisp vào bản vẽ và lần đầu nhập "tdt" để gọi lệnh thì xuất hiện : "Drawing Scale" để nhập khai báo tỷ lệ?

Nhưng lần sau nhập "tdt" để  gọi lệnh thì không xuất hiện "Drawing Scale" nữa, muốn "Drawing Scale" xuất hiện lại phải tắt bản vẽ và load Lisp lại từ đầu.

Vậy có cách nào để có thể xuất hiện "Drawing Scale" khi mình muốn mà không cần phải mở bản vẽ lên và load lại lisp cad .

Em xin cảm ơn!

 

zzz.png

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 10/6/2020 tại 22:41, vcdichoi đã nói:

Vâng em cảm ơn anh.

Anh cho em hỏi thêm chút xíu.

Khi em load lisp vào bản vẽ và lần đầu nhập "tdt" để gọi lệnh thì xuất hiện : "Drawing Scale" để nhập khai báo tỷ lệ?

Nhưng lần sau nhập "tdt" để  gọi lệnh thì không xuất hiện "Drawing Scale" nữa, muốn "Drawing Scale" xuất hiện lại phải tắt bản vẽ và load Lisp lại từ đầu.

Vậy có cách nào để có thể xuất hiện "Drawing Scale" khi mình muốn mà không cần phải mở bản vẽ lên và load lại lisp cad .

Em xin cảm ơn!

 

zzz.png

bạn tìm đoạn mã này:

    (if (= tl nil)
        (progn (setq tl (getreal "\nDrawing scale : ")) ;    (setq ntl (/ 1 tl))
                                                  ;    (setq tl2 (* ntl ntl))
        )
    )

và thay bằng duy nhất 1 dòng mã:   (setq tl (getreal "\nDrawing scale : "))

Tuy nhiên, nhìn chung lisp này viết không hay.

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 13/6/2020 tại 16:16, thiep đã nói:

bạn tìm đoạn mã này:

  • cadvietlisp.lsp
    lisp help
  •  

    (if (= tl nil)
        (progn (setq tl (getreal "\nDrawing scale : ")) ;    (setq ntl (/ 1 tl))
                                                  ;    (setq tl2 (* ntl ntl))
        )
    )

và thay bằng duy nhất 1 dòng mã:   (setq tl (getreal "\nDrawing scale : "))

Tuy nhiên, nhìn chung lisp này viết không hay.

Em xin cảm ơn anh!

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

×