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

Hỏi về Support file search path

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

Mình muốn viết 1 lisp chèn block "a" ở đường dẫn "e:\\lisp\\chen diem\\a.dwg" vào bản vẽ hiện hành có code như sau:

(setq block "e:\\lisp\\chen diem\\a.dwg" )

(command "insert" block '(0 0 0) "1" "1" "0")

 

Sau đó vào option, chọn support file search path, add thư mục "e:\\lisp\\chen diem" nhưng khi chạy đoạn lisp trên thì vẫn bị báo lỗi "can't find file in search parth"

Bác nào có thể giúp mình 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
Mình muốn viết 1 lisp chèn block "a" ở đường dẫn "e:\\lisp\\chen diem\\a.dwg" vào bản vẽ hiện hành có code như sau:

(setq block "e:\\lisp\\chen diem\\a.dwg" )

(command "insert" block '(0 0 0) "1" "1" "0")

 

Sau đó vào option, chọn support file search path, add thư mục "e:\\lisp\\chen diem" nhưng khi chạy đoạn lisp trên thì vẫn bị báo lỗi "can't find file in search parth"

Bác nào có thể giúp mình với

Bạn thử đừng nhập chữ lúc chọn support file path mà hãy browse xem sao.

Sau đó hãy sửa code thành:

(setq block "a.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
Mình muốn viết 1 lisp chèn block "a" ở đường dẫn "e:\\lisp\\chen diem\\a.dwg" vào bản vẽ hiện hành có code như sau:

(setq block "e:\\lisp\\chen diem\\a.dwg" )

(command "insert" block '(0 0 0) "1" "1" "0")

 

Sau đó vào option, chọn support file search path, add thư mục "e:\\lisp\\chen diem" nhưng khi chạy đoạn lisp trên thì vẫn bị báo lỗi "can't find file in search parth"

Bác nào có thể giúp mình với

Khi đã chỉ đích danh đường dẩn thì không cần add thư mục vào trong support file search path nửa chỉ cần viết đúng như sau:

(command ".INSERT" "e:\\lisp\\chen diem\\a.dwg" (list 0 0 0) 1 1 0)

  • 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
Khi đã chỉ đích danh đường dẩn thì không cần add thư mục vào trong support file search path nửa chỉ cần viết đúng như sau:

(command ".INSERT" "e:\\lisp\\chen diem\\a.dwg" (list 0 0 0) 1 1 0)

Mình ko muốn chỉ đích danh đường dẫn trong lệnh "insert" vì nếu dùng lisp này ở máy tính khác thì lại phải thay đường dẫn trong lisp

 

@Nguyen Hoanh: mình đã làm theo cách của bác Nguyễn Hoành thì thấy được, như vậy nếu mình chỉ (setq block "a.dwg") thì khi chạy lisp, cad sẽ tìm tất cả thư mục trong support file search path để insert file "a.dwg" phải ko, nếu có 2 thư mục đều chứa file "a.dwg" thì cad sẽ insert như nào 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
Mình ko muốn chỉ đích danh đường dẫn trong lệnh "insert" vì nếu dùng lisp này ở máy tính khác thì lại phải thay đường dẫn trong lisp

 

@Nguyen Hoanh: mình đã làm theo cách của bác Nguyễn Hoành thì thấy được, như vậy nếu mình chỉ (setq block "a.dwg") thì khi chạy lisp, cad sẽ tìm tất cả thư mục trong support file search path để insert file "a.dwg" phải ko, nếu có 2 thư mục đều chứa file "a.dwg" thì cad sẽ insert như nào nhỉ

Khi tìm trong support file search path nó có thứ tự ưu tiên tìm kiếm đó bạn. Cái nào được tìm thấy trước thì nó lấy cái đó.

Mình giải quyết vấn đề bạn vướng như sau.

(setq odiachay "c:")

(command ".INSERT" (strcat odiachay "\\tienich\\dwg\\cott") (list (car a)(cadr a)) dkcot dkcot 0)

Và bạn chỉ cần thay đổi dòng (setq odiachay "c:") khi qua máy khác cón tất cả các dòng insert thì vẩn giử nguyê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
Khi đã chỉ đích danh đường dẩn thì không cần add thư mục vào trong support file search path nửa chỉ cần viết đúng như sau:

(command ".INSERT" "e:\\lisp\\chen diem\\a.dwg" (list 0 0 0) 1 1 0)

 

 

Pác ơi!Em muốn chèn các block trong 1 thư viện (folder).Em đang làm ATGT mà copy thì lâu quá nên muốn nhờ pác viết hộ em con lisp chèn block có được hok?

VD: em đánh lệnh 201 thì nó sẽ insert block 201 cho em vào bản vẽ...

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  

×