Chuyển đến nội dung
Diễn đàn CADViet
  • Thông báo

    • Nguyen Hoanh

      CADViet đã hoàn tất nâng cấp   14/09/2017

      Chào các bạn, CADViet đã hoàn tất việc nâng cấp lên phiên bản mới. Tất cả các chức năng đã hoạt động theo kỳ vọng của ban quản trị. Nếu có vấn đề gì cần phản hồi, các bản post ở đây nhé: Trân trọng, Nguyễn Hoành.
Đăng nhập để thực hiện theo  
haimed

Hỏi về Support file search path

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

haimed    2

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
Nguyen Hoanh    4.524
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
duy782006    1.372
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
haimed    2
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
duy782006    1.372
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
w1nDream    73
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  

×