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  
nhoclangbat

[Nhờ chỉnh sữa] lsp load linetype

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

nhoclangbat    382

Em viết 1 lsp đơn giản dùng để gọi các linetype em đã tạo, nhưng có 1 số chỗ vướn.Chẳng là em đang học bên lớp anh

Ket, đc anh Ket hướng dẫn học 1 phần nhỏ về lệnh command, em mún viết lsp này cũng để xài,nhưng về thông số để set các lệnh trong

cad em chưa nắm đc hết còn mù mờ lắm, chủ yếu là mò đại ^^.Các linetype riêng của em đã tạo thành 1 file.lin, giờ ý em là tùy từng

mục đích của bản vẽ chỉ cần load 1 vài linetype trong số đó, nếu load hết thì chỗ linetype dài hết cả màn hình kím cũng mệt ^^.

Thông thường để load thì lại phải vô other->load->file-> chọn đường dẫn, chọn file, chọn linetype=> hơi dài dòng.

Cái lsp em mò viết đại nó cũng đã load đc nhưng thấy chưa đc đúng ý em lắm, thấy nó kỳ kỳ ^^.

em viết như thế này

(defun c:ltt ()

(command "linetype" "load" "C:\program files\autodesk\autocad 2012-English\hotro" "acad.lin" "s" "1LOGIOI_54" "S" "1LEDUONG_54" "")

)

Sau khi chạy bật f2 lên thì em thấy nó báo giống như là ko kím đc, rùi nó kím trong file acadiso.lin

nằm trong mục appdata, roaming, autcad, enu18.0, support chứ ko kím trong đường dẫn em đã viết.

em nghĩ chắc là do cú pháp em sai nhưng em đảm bảo đường dẫn là đúng, em đặt file của em trong thư mục hotro.

Vậy là em phải copy 1 số linetype của em vào thư mục mà cad nó lấy để thử nghiệm xem thế nào thì kết quả là nó lấy đc.

Mục đích của em là khi cần chỉ cần đánh 1 lệnh là nó load lun các linetype em cần theo đúng đường dẫn của em,

Em cũng đã thử sửa đi sửa lại nhưng vẫn load ko đc chỉ có viết như trên là đc và phải copy linetype cũa em vào file .lin mà cad nó lấy.

Mong các anh xem hộ giúp em hoàn thiện cái lsp củ chuối này của em, em cảm ơn rất nhiều :D

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
nhoclangbat    382

vẫn ko đc anh Doan Van Ha ơi sữa thành \\ đúng cú pháp nhưng vẫn load ko đc, nó báo như thế này

Command: LTT linetype

Current line type: "CONTINUOUS"

Enter an option [?/Create/Load/Set]: load

Enter linetype(s) to load: C:\program files\autodesk\autocad 2012 -

English\HSB12\acad.lin. Enter name of linetype file to search <acad.lin>:

acad.lin

 

No matching linetypes found in file

C:\Users\Devil\appdata\roaming\autodesk\autocad 2012 -

english\r18.2\enu\support\acad.lin.

 

Enter an option [?/Create/Load/Set]: s

Specify linetype name or [?] <CONTINUOUS>: 1LOGIOI_54

Linetype "1LOGIOI_54" not found in acad.lin.

You can use the "Load" option to load it from another file.

error: Function cancelled

Enter an option [?/Create/Load/Set]: *Cancel*

Đúng là lsp em nó củ... thiệ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
Doan Van Ha    2.678

Cú pháp hướng dẫn:

(defun C:LTT()
(if (tblsearch "ltype" "LineTypeName")
 (command "linetype" "load" "LineTypeName" "FileName+Path" "y" "")
 (command "linetype" "load" "LineTypeName" "FileName+Path" "")))

  • Vote tăng 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
Doan Van Ha    2.678

Nếu bạn làm theo code hướng dẫn là đúng thì sẽ suy ra code của bạn sai chỗ nào. Rõ mười mươi rồi còn gì (nhất là thứ tự các thông số, và việc Set liệu có cần 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
ketxu    2.652

Nhoclangbat chú ý đánh TV có dấu trong các bài của mình. Chấm phẩy xuống dòng tùy tiện thì người đọc khó theo dõ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
nhoclangbat    382

Ah em hỉu rùi anh Doan Van Ha, lsp của em nếu sửa lại như cú pháp anh hướng dẩn thì chỉ cần 1 dòng là đủ mà hơi dài nếu load nhìu linetype.

(command "linetype" "load" "tên của loại linetype mún load, tên tiếp, ...." " đường dẫn" "")

Đơn giản vậy mà giờ mới ngộ ra, tội ko dịch đc cad nó nói gì hihi

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
phamthanhbinh    3.123

Ah em hỉu rùi anh Doan Van Ha, lsp của em nếu sửa lại như cú pháp anh hướng dẩn thì chỉ cần 1 dòng là đủ mà hơi dài nếu load nhìu linetype.

(command "linetype" "load" "tên của loại linetype mún load, tên tiếp, ...." " đường dẫn" "")

Đơn giản vậy mà giờ mới ngộ ra, tội ko dịch đc cad nó nói gì hihi

Hề hề hề,

Ngộ gì cũng tốt nhưng chớ ngộ gió nhé....

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

Các bạn cho hỏi tý:

Mình muốn sd cứu pháp cũng như thế này (trích ở trên)

(if (tblsearch "ltype" "LineTypeName")
(command "linetype" "load" "LineTypeName" "FileName+Path" "y" "")
(command "linetype" "load" "LineTypeName" "FileName+Path" "")))

nhưng nếu muốn biết "LineTypeName" đang nằm trong file nào thì làm sao các bạn (ý mình có một vài file .lin nhưng.muốn viết  tổng quát lisp phải tự biết tìm đúng file có "LineTypeName" đó để load).

Cám ơn các bạ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

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  

×