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

[Hỏi] Lisp xác định tỷ lệ khung Mview

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

Có vấn đề này mong các bác nếu giúp được giúp đỡ:

Trong layout có các khung MV, tỷ lệ khác nhau: ví dụ MV1: 1/100; MV2: 1/50

Có cách nào mà mình chỉ cần click vào khung mview đó thì biến hệ thống (getvar "dimscale") được gán bằng 100,...

Cám ơn !

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

Phải ri không bạn?


(defun C:ttt()
    (if (setq e (car (entsel "Chon mview")))
      (setq sc (vla-get-CustomScale (vlax-ename->vla-object e)))
    )
    (setvar "dimscale" sc)
)
  • Vote tăng 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

Tôi hiểu yêu cầu của bạn rồi.

Bạn xem thử thế này có được không nhé

(vl-load-com)

(vl-load-reactors)
(if (= #ReactorCommand nil)
  (setq #ReactorCommand (vlr-command-reactor nil '(
                           (:vlr-commandEnded . DuongBaDiep)
                           ; (:vlr-commandWillStart . DuongBaDiep)
                          )
            )
  )
)
(defun DuongBaDiep (param1 param2)
    (if (or (= (car param2) "MSPACE") (= (car param2) "_.MSPACE")) (Lamgiday))
)
(defun Lamgiday()
    (setq ent (vlax-vla-object->ename
                    (vla-get-activepviewport
                      (vla-get-activedocument (vlax-get-acad-object)))))
    (setq cvscale (vla-get-customscale (vlax-ename->vla-object ent)))    
    (setvar "dimscale" cvscale)

    (alert (strcat "Moi setvar xong" (rtos cvscale)))
)

 

Chúc cuối tuần vui vẻ

P/S: Cái này có hiệu lực khi dùng lệnh mspace hoặc kích đúp chuột vào MView bạn nhé.

Tức là khi dùng command "MSPACE"

  • Vote tăng 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

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  

×