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

[ Yêu Cầu ] lisp kết hợp PL & UCS

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

Yêu cầu: ( Kết hợp giữa UCS & PL)

- Nhập lệnh, chọn điểm bắt đầu. Sau đó chọn TEXT có sẵn trong bản vẽ (Hoặc có thể nhập tay), nó sẽ vẽ 1 đoạn thẳng đứng xuống dưới có chiều dài bằng giá trị TEXT.

- Đổi hệ trục về (0,0) tại tọa độ cuối đoạn thằng vừa vẽ

- Chuyển về lệnh PL bình thường (Bắt đầu lệnh)

( Có nghĩa là Lisp sẽ giúp đổi tọa độ về tại 1 điểm và bắt đầu thực hiện luôn lệnh PL từ gốc tọa độ mới)

 

Không biết có khả thi không. Nhưng e không làm được nên chỉ biết nhờ vả các bác trên này.

Cảm ơn các bác đã giúp đỡ.

File Cad cụ thể

http://www.cadviet.c...o_viet_lisp.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

Yêu cầu: ( Kết hợp giữa UCS & PL)

- Nhập lệnh, chọn điểm bắt đầu. Sau đó chọn TEXT có sẵn trong bản vẽ (Hoặc có thể nhập tay), nó sẽ vẽ 1 đoạn thẳng đứng xuống dưới có chiều dài bằng giá trị TEXT.

- Đổi hệ trục về (0,0) tại tọa độ cuối đoạn thằng vừa vẽ

- Chuyển về lệnh PL bình thường

( Có nghĩa là Lisp sẽ giúp đổi tọa độ về tại 1 điểm và thực hiện luôn lệnh PL từ gốc tọa độ mới)

 

Không biết có khả thi không. Nhưng e không làm được nên chỉ biết nhờ vả các bác trên này.

Cảm ơn các bác đã giúp đỡ.

File Cad cụ thể

http://www.cadviet.c...o_viet_lisp.dwg

Bạn đã biết vì sao bài của bạn bị mod xoá rồi ư?

Đây là lisp cho bạn (chú ý kích thước trên bản vẽ khác kết quả dim nhé)

(defun C:PL2( / p1 len p2)
(setq osm (getvar "osmode") cmd (getvar "cmdecho"))
(initget 1) (setq p1 (getpoint "\nChon diem bat dau: "))
(setq len (atof (cdr (assoc 1 (entget (car (entsel "\nChon Text de lay chieu dai: ")))))))
(setq p2 (polar p1 (/ pi -2) len))
(entmakex (list (cons 0 "LINE") (cons 10 p1) (cons 11 p2)))
(setvar "osmode" 0) (setvar "cmdecho" 0)
(command "ucs" p2 "")
(setvar "osmode" osm) (setvar "cmdecho" cmd)
(command "pline"))
;----- CHU Y: Gia tri dim tren ban ve cho thay: muon co ket qua dung can phai nhan/chia chieu dai cho 1 he so.

P/S: đã thay các hàm Acet.

  • 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

Bạn đã biết vì sao bài của bạn bị mod xoá rồi ư?

Đây là lisp cho bạn (chú ý kích thước trên bản vẽ khác kết quả dim nhé)

(defun C:PL2( / p1 len p2)
(initget 1) (setq p1 (getpoint "\nChon diem bat dau: "))
(setq len (atof (cdr (assoc 1 (entget (car (entsel "\nChon Text de lay chieu dai: ")))))))
(setq p2 (polar p1 (/ pi -2) len))
(entmakex (list (cons 0 "LINE") (cons 10 p1) (cons 11 p2)))
(acet-sysvar-set (list "osmode" 0 "cmdecho" 0))
(command "ucs" p2 "")
(acet-sysvar-restore)
(command "pline"))
;----- CHU Y: Gia tri dim tren ban ve cho thay: muon co ket qua dung can phai nhan/chia chieu dai cho 1 he so.

 

Trước hết cảm ơn Bác đã giành thời gian giúp em.

Em chạy lisp của bác nhưng nó báo lỗi:

 

 

Command: pl2

 

Chon diem bat dau:

Chon Text de lay chieu dai: ; error: no function definition: ACET-SYSVAR-SET

Bác xem lại giúp em

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

 

Trước hết cảm ơn Bác đã giành thời gian giúp em.

Em chạy lisp của bác nhưng nó báo lỗi:

 

 

Command: pl2

 

Chon diem bat dau:

Chon Text de lay chieu dai: ; error: no function definition: ACET-SYSVAR-SET

Bác xem lại giúp em

Do máy bạn chưa cài Tool Express. Tôi đã sửa cho bạn. Vẫn Link cũ ở trê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

Do máy bạn chưa cài Tool Express. Tôi đã sửa cho bạn. Vẫn Link cũ ở trên

 

Do máy bạn chưa cài Tool Express. Tôi đã sửa cho bạn. Vẫn Link cũ ở trên

 

Trên là báo lỗi do em dùng trên Cad 2005 chưa cài Tool Express

Nhưng em thử trên cad 2007 đã cài đủ Tool Express thì báo lỗi sau:

 

 

Command: pl2

Chon diem bat dau: _endp of

Chon Text de lay chieu dai:

Invalid option keyword.

; error: Function cancelled

 

Enter an option [New/Move/orthoGraphic/Prev/Restore/Save/Del/Apply/?/World]

<World>:

 

Đến dòng cuối cùng Enter thì kết thúc lệnh. Kết quả là chỉ vẽ được 1 PL có chiều dài bằng giá trị Text trên bản vẽ.

Bác xem lại giúp em.

 

PS: Giá trị dim trong bản vẽ e gửi chỉ mang tính minh họa cho giá trị text. Em muốn sau khi thực hiện xong bước chọn text thì hệ trục chuyển về tại cuối điểm PL(Tại B trên bản vẽ, k cần vẽ AB) và bắt đầu lại lệnh PL tại gôc tọa độ đó (Bỏ qua được các thao tác XĐ gốc tọa độ mới và chuyển hệ trụ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

 

 

 

Trên là báo lỗi do em dùng trên Cad 2005 chưa cài Tool Express

Nhưng em thử trên cad 2007 đã cài đủ Tool Express thì báo lỗi sau:

 

 

Command: pl2

Chon diem bat dau: _endp of

Chon Text de lay chieu dai:

Invalid option keyword.

; error: Function cancelled

 

Enter an option [New/Move/orthoGraphic/Prev/Restore/Save/Del/Apply/?/World]

<World>:

 

Đến dòng cuối cùng Enter thì kết thúc lệnh. Kết quả là chỉ vẽ được 1 PL có chiều dài bằng giá trị Text trên bản vẽ.

Bác xem lại giúp em.

 

PS: Giá trị dim trong bản vẽ e gửi chỉ mang tính minh họa cho giá trị text. Em muốn sau khi thực hiện xong bước chọn text thì hệ trục chuyển về tại cuối điểm PL(Tại B trên bản vẽ, k cần vẽ AB) và bắt đầu lại lệnh PL tại gôc tọa độ đó (Bỏ qua được các thao tác XĐ gốc tọa độ mới và chuyển hệ trục)

Tôi đã sửa cho bạn ở trên (bài ở #2) để có thể dùng với Cad từ R14. Đã check trên bản vẽ bạn gởi, không lỗi gì. Nếu lỗi thì bạn post bản vẽ lên cho tôi.

  • 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
Tôi đã sửa cho bạn ở trên (bài ở #2) để có thể dùng với Cad từ R14. Đã check trên bản vẽ bạn gởi, không lỗi gì. Nếu lỗi thì bạn post bản vẽ lên cho tôi.

 

Dạ em đã test lại.

Ngon rồi bác ạ.

Em cảm ơn bác nhiều.

Chúc bác tuần làm việc mới hiệu quả.

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  

×