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

Xin hỏi: tạo script mở file và chạy command

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

Mình đang tập tạo script chạy bằng dòng lệnh command, mong muốn là tạo ra một cái script hoàn chỉnh để chỉ cần paste vào command thôi thì sẽ tự mở ra C:\BANVE.DWG, và zoom đến tọa độ (COMMAND "zoom" "c" (LIST -180228.0 -57120.9 0.0) 287185.0) . Nhưng hiện tại thì script mình chỉ dừng lại ở mở file và không chạy tiếp được lệnh zoom, cao nhân cho hỏi script bị lỗi ở đâu và chỉnh ra sao nhỉ?

 

FILEDIA
0
OPEN
"C:\BANVE.DWG"

(COMMAND "zoom" "c" (LIST -180228.0 -57120.9 0.0) 287185.0)
 

  • Vote giảm 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
1 giờ} trướ}c, gia_bach đã nói:

Bạn thử đoạn script này:


FILEDIA
0
OPEN
"C:\BANVE.DWG"

zoom
c
-180228.0,-57120.9,0.0
287185.0

 

Tôi nghĩ không chạy được, vi script cũng như lisp chỉ ảnh hưởng tới file hiện hành chứ nếu mơ file khác thì phải load lại mới chạy được. Tức là trong script trên nó sẽ chỉ làm tới đoạn open c:/.... sau đó phải qua file mới load tiếp đoạn sau thì mới được.

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

Bạn thử đoạn script này:


FILEDIA
0
OPEN
"C:\BANVE.DWG"

zoom
c
-180228.0,-57120.9,0.0
287185.0

 

thanks bạn nhưng Cũng ko được, nó bị ngừng ở đoạn mở file rồi.

 

49 phút trước, alisp đã nói:

Tôi nghĩ không chạy được, vi script cũng như lisp chỉ ảnh hưởng tới file hiện hành chứ nếu mơ file khác thì phải load lại mới chạy được. Tức là trong script trên nó sẽ chỉ làm tới đoạn open c:/.... sau đó phải qua file mới load tiếp đoạn sau thì mới được.

cũng ko hẳn là phải load script đâu vì mình đâu có lưu ra file scr, chỉ cần tìm cách mở file và nó tự động nhập tiếp lệnh zoom vào thanh command là đc, mà hiện giờ chưa biết cách làm sao nữa.Ai có sáng kiến gì ko nhỉ.

  • 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

Nếu không nhầm một nội dung mở file với zoom này mà bạn lập 3 hay 4 topic rồi ấy nhỉ. Mình nghĩ bạn nên tập trung trao đổi 1 topic thôi để tránhloãng diễn đàn với sau này có người cần họ tìm kiếm dỡ hơn. Với lại liên quan đến thuật toán ý tưởng bạn nên đăng ở đâ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

Cách này tương tự nhưng thay vì dán vào command thì mình lưu ra file lisp 

Đáp ứng cả 2 Trường hợp khi đã mở file và chưa mở file.

Với trường hợp 2, chỉ cần gửi file cho máy khác load là sử dụng được, không cần add support hay gì hết 

474018555_ezgif.com-gif-maker(1).gif.b02233a739fe170511cb67a446a090da.gif

 

Link Youtube cho bác nào muốn xem kỹ

 

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

Cách này tương tự nhưng thay vì dán vào command thì mình lưu ra file lisp 

Đáp ứng cả 2 Trường hợp khi đã mở file và chưa mở file.

Với trường hợp 2, chỉ cần gửi file cho máy khác load là sử dụng được, không cần add support hay gì hết 

474018555_ezgif.com-gif-maker(1).gif.b02233a739fe170511cb67a446a090da.gif

 

Link Youtube cho bác nào muốn xem kỹ

 

Mình nghĩ cũng gần tương tự ý tưởng mình gợi ý cho bạn ấy ở topic trước, nhưng thay vì phải load lại file lisp tạo ra thì mình chịu khó code thêm tí thì khi mở file sẽ tự view đến luô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
2 giờ trước, DungNguyen685 đã nói:

Mình nghĩ cũng gần tương tự ý tưởng mình gợi ý cho bạn ấy ở topic trước, nhưng thay vì phải load lại file lisp tạo ra thì mình chịu khó code thêm tí thì khi mở file sẽ tự view đến luôn.

Cái load file lisp này có khác gì dán code vào command line đâu, chẳng qua mình lưu ra file riêng vì nó tiện, có thể dùng lại nhiều lần, có hiện tên vùng luôn. Lần sau muốn mở lại thì chỉ cần chọn lại cái view đó thôi. 

Ngoài ra thì không phải lưu cái gì vào regetry hay txt cả, cũng k phải add file lsp vào support

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

Cái load file lisp này có khác gì dán code vào command line đâu, chẳng qua mình lưu ra file riêng vì nó tiện, có thể dùng lại nhiều lần, có hiện tên vùng luôn. Lần sau muốn mở lại thì chỉ cần chọn lại cái view đó thôi. 

Ngoài ra thì không phải lưu cái gì vào regetry hay txt cả, cũng k phải add file lsp vào support

Chắc do cách mình diễn đạt bạn không hiểu. Bản chất lưu file LSP hay TXT hay lưu vào registry abc...nó cũng là lưu thông tin để mở file và zoom tới thôi.

Ý mình là vì bạn này đang sửa dụng ổ đĩa dùng chung thay vì phải load lisp lại lần nữa(hoặc gửi code qua command line) để mở  thì mình nên viết thêm môt tí bằng cách gõ lệnh cho tiện thôi(Hướng đến việc trao đổi thông tin nhanh VD: Máy A gõ lênh TAO Máy B gõ lênh XEM là đến ngay đó mà)

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

Cám ơn ý tưởng mới của các bạn, ý của mình thì đơn giản hơn là tự tạo ra một dòng lệnh lưu vào clipboard, sau đó chỉ việc send lệnh đó cho máy khác dán vào command line là sẽ tự mở đúng file và đến ngay view đó. Chứ ko muốn tạo lisp vì load lisp lại sẽ mất thêm công đoạn và phải mất công tìm tới thư mục chứa lisp nữa ,lệnh này dùng 1 lần thôi cũng ko dùng lạ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
18 phút trước, binbin72088@gmail.com đã nói:

Cám ơn ý tưởng mới của các bạn, ý của mình thì đơn giản hơn là tự tạo ra một dòng lệnh lưu vào clipboard, sau đó chỉ việc send lệnh đó cho máy khác dán vào command line là sẽ tự mở đúng file và đến ngay view đó. Chứ ko muốn tạo lisp vì load lisp lại sẽ mất thêm công đoạn và phải mất công tìm tới thư mục chứa lisp nữa ,lệnh này dùng 1 lần thôi cũng ko dùng lại.

Bạn xem cmt topic kia của mình cộng bài viết này của anh Ket: 

 

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ị động trong việc mở file chung...

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

ý của mình thì đơn giản hơn là tự tạo ra một dòng lệnh lưu vào clipboard, sau đó chỉ việc send lệnh đó cho máy khác dán vào command line là sẽ tự mở đúng file và đến ngay view đó. Chứ ko muốn tạo lisp vì load lisp lại sẽ mất thêm công đoạn và phải mất công tìm tới thư mục chứa lisp nữa ,lệnh này dùng 1 lần thôi cũng ko dùng lại.

Cái mình làm hoàn toàn đúng ý của bạn.

Nội dung mình load trong file lsp hoàn toàn có thể copy vào clipboard rồi dán vào command.

Việc tạo ra file lsp là mình thêm thắt vào thô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

Những gì mình nói là như này.

Chỉ dùng 2 lệnh. bên máy A gõ lệnh để tạo view, máy B gõ lệnh để view nếu ở chung bản vẽ thì sẽ view tới khung đó nếu khác bản vẽ thì sẽ mở bản vẽ cùng thư mục cùng tên và view tới.

test.gif

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

Bị động trong việc mở file chung...

Cái mình làm hoàn toàn đúng ý của bạn.

Nội dung mình load trong file lsp hoàn toàn có thể copy vào clipboard rồi dán vào command.

Việc tạo ra file lsp là mình thêm thắt vào thôi 

vâng vậy thì tốt quá rồi ạ.

 

19 giờ trước, DungNguyen685 đã nói:

Những gì mình nói là như này.

Chỉ dùng 2 lệnh. bên máy A gõ lệnh để tạo view, máy B gõ lệnh để view nếu ở chung bản vẽ thì sẽ view tới khung đó nếu khác bản vẽ thì sẽ mở bản vẽ cùng thư mục cùng tên và view tới.

test.gif

cái này đúng ý mình nè, còn vấn đề nếu máy A có load lisp còn máy B là một máy hoàn toàn lạ chưa load lisp liệu có xài được ko nhỉ? mình mong muốn là chỉ tạo ra 1 dòng command thôi và gửi cho máy khác nhập vào tới liền. (tức là chỉ cần máy A có load lisp tạo code thôi, còn máy B ko cần load lisp gì cả)

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  

×