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

Yêu cầu:Xin trợ giúp bổ sung lisp lấy view từ máy này sang máy khác

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

E có viết cái lisp lấy view từ máy này qua máy khác mà còn một bước nữa xin ý kiến của các cao nhân, lisp có công dụng bấm lisp thì nó sẽ tạo ra một dòng Code của View hiện tại trên màn hình tự động lưu vào clipboard, sau đó em gửi cái code đó cho bạn em, họ dán vào command thì tự động đến được view đó là ok rồi, với điều kiện hai máy đang mở cùng 1 file. Tuy nhiên nếu máy bạn em không mở file đó thì e ko biết các làm sao để lisp tự động mở file đó và đến view đó luôn (tức là còn bước mở file nữa, file chung lưu trên ổ mạng ví dụ tên D:\FILECHUNG.DWG), mong được mọi người bổ sung dùm.

 

(defun c:covi (/ p x y ptcoord )

(setq p (getpoint "Pick Point: "))

(setq x (rtos (car p)))

(setq y (rtos (cadr p)))

(setq z (rtos (caddr p)))

(setq ptcoord (strcat x ", " y ", " z))

(vlax-invoke

    (vlax-get (vlax-get (vlax-create-object "htmlfile") 'ParentWindow) 'ClipBoardData)

    'setData

    "TEXT"

    (strcat "_zoom c "x","y" 3000 .")

)

)

  • Vote giảm 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

(getvar "dwgprefix") ; Lấy đường dẫn

(vl-string-right-trim ".dwg" (vlax-get-property (vla-get-activedocument (vlax-get-acad-object)) 'WindowTitle )) ;Lấy tên bản vẽ 

strcat nó lại

getfiled ;để mở file theo đường dẫn

rồi zoom đến

 

 

  • 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
26 phút trước, DungNguyen685 đã nói:

(getvar "dwgprefix") ; Lấy đường dẫn

(vl-string-right-trim ".dwg" (vlax-get-property (vla-get-activedocument (vlax-get-acad-object)) 'WindowTitle )) ;Lấy tên bản vẽ 

strcat nó lại

getfiled ;để mở file theo đường dẫn

rồi zoom đến

 

 

Phần tô đậm sao không Getvar  luôn cho dễ bạn ơi

  • 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
12 phút trước, Doan Nguyen Van đã nói:

Phần tô đậm sao không Getvar  luôn cho dễ bạn ơi

hehe, mình hay dùng như này chứ thật tình mình không biết nó là biến gì hết. Bạn có thể chia sẻ để học hỏi với.

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

hehe, mình hay dùng như này chứ thật tình mình không biết nó là biến gì hết. Bạn có thể chia sẻ để học hỏi với.

Nó là Dwgname

  • Like 2

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

Thanks bạn,Mở file thì oki rồi, còn sau khi mở file rồi đến lúc chuyển qua gõ lệnh zoom vào command thì ko được, tức là phải paste zoom thủ công ấy, mình đang tìm cách để tạo 1 dòng lệnh để paste vào là tự mở file và tự zoom luôn ấy.

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
7 giờ trước, Doan Nguyen Van đã nói:

Nó là Dwgname

Cảm ơn nhé!

 

6 giờ trước, binbin72088@gmail.com đã nói:

Thanks bạn,Mở file thì oki rồi, còn sau khi mở file rồi đến lúc chuyển qua gõ lệnh zoom vào command thì ko được, tức là phải paste zoom thủ công ấy, mình đang tìm cách để tạo 1 dòng lệnh để paste vào là tự mở file và tự zoom luôn ấy.

Mở file ok rồi thì mình gợi ý cho bạn cách này:

1. Đoạn code mà lấy vị trí zoom trong đó bạn chèn một đoạn mã để khi gõ lệnh thì ghi một giá trị khởi chạy và thông số zoom vào registry hay file txt, csv.. lưu ở đâu đó.

2. Bạn viết một đoạn code ngoài defun và appload vào startup để khi mở file sẽ chạy code, lúc này trích xuất dữ liệu từ nơi đã lưu rồi dùng if hay hàm gì để so sánh nếu giá trị khởi chạy ở mục 1  bằng thì thực thi lệnh để zoom đến và trả lại giá trị khởi chạy bằng một giá trị không khởi chạy(để khi dùng lệnh mở  file lên thì đoạn code đó hoạt động mà khi khởi động các file khác thì khô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
10 giờ trước, Quynh20 đã nói:

Quá khó, cái , cái này phải hiểu về tuyn học rồi phải không anh?

Chủ top đã biết viết lisp rồi thì mình chia sẻ thuật toán để giải quyết thôi. Chứ nếu chưa biết thì làm sao mà viế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

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  

×