Jump to content
InfoFile
Tác giả: Doan Van Ha
Bài viết gốc: 182871
Tên lệnh: ha
Cách lấy số liệu từ file txt

Nếu nhằm mục đích như thế, thì đây!

Filename: 182871_ha.lsp
Tác giả: kedensau88
Bài viết gốc: 183005
Tên lệnh: fla
Cách lấy số liệu từ file txt


Em có 1 ví dụ vẽ cái hình này,anh có thể viết cho em 1 cái lisp để vẽ hình này tuơng tự như cái lisp vẽ hình chữ nhật ở trên được không ạ ,trong file txt sẽ chứa số liệu của "Loại hình,D,X,G,tsmall,WT,T1,A,r1,C,D1"
Cảm ơn anh nhiều nhiều.
Cho em xin lỗi nếu làm phiền anh nhiều quá nha.^^
http://farm3.anhso.net/upload/20111123/12/o/anhso-121855_Flanges.jpg
Còn đây là...
>>


Em có 1 ví dụ vẽ cái hình này,anh có thể viết cho em 1 cái lisp để vẽ hình này tuơng tự như cái lisp vẽ hình chữ nhật ở trên được không ạ ,trong file txt sẽ chứa số liệu của "Loại hình,D,X,G,tsmall,WT,T1,A,r1,C,D1"
Cảm ơn anh nhiều nhiều.
Cho em xin lỗi nếu làm phiền anh nhiều quá nha.^^
http://farm3.anhso.net/upload/20111123/12/o/anhso-121855_Flanges.jpg
Còn đây là cái chuơng trình thủ công em viết cho nó :

<<

Filename: 183005_fla.lsp
Tác giả: tdvn
Bài viết gốc: 55243
Tên lệnh: test
Lisp có hàm nào thay thế lệnh zoom không?

Mình mạo muội sửa cái lisp của bạn thành như vậy. Bác tham khảo xem dùng được không

Mình cũng thường dùng cái kiểu này để quản lý các vị trí của các đối tượng cần tìm tới trong một bản vẽ phức tạp.

Filename: 55243_test.lsp
Tác giả: phamthanhbinh
Bài viết gốc: 183064
Tên lệnh: dkctd
Lisp dãn cách các text đè lên nhau với khoảng cách cho trước


Hề hề hề,
Vì topic trôi đi nhanh quá nên mình không kịp xem yêu cầu của bạn. Vấn đề bạn nêu không khó và hoàn toàn có thể làm được. Tuy nhiên như mình đã nói, trong khi chưa có bạn hoàn toàn vẫn có thể xài lisp cũ kèm theo thằng move sau khi chạy lisp mà. Như vậy vừa được việc vừa đỡ sốt suột bạn ạ.
Hãy chờ chút xíu, mình sẽ xem và bổ sung điều bạn cần.
>>

Hề hề hề,
Vì topic trôi đi nhanh quá nên mình không kịp xem yêu cầu của bạn. Vấn đề bạn nêu không khó và hoàn toàn có thể làm được. Tuy nhiên như mình đã nói, trong khi chưa có bạn hoàn toàn vẫn có thể xài lisp cũ kèm theo thằng move sau khi chạy lisp mà. Như vậy vừa được việc vừa đỡ sốt suột bạn ạ.
Hãy chờ chút xíu, mình sẽ xem và bổ sung điều bạn cần.

A, đây rồi, lisp nóng......



<<

Filename: 183064_dkctd.lsp
Tác giả: Doan Van Ha
Bài viết gốc: 183324
Tên lệnh: ha
Lisp di chuyển text của dim


Tôi nhớ là đã viết giùm bạn nào đó cái y/c này rồi nhưng bây giờ mò đường link không ra nên đành post lên lại cho bạn vậy.

Filename: 183324_ha.lsp
Tác giả: hanam1210
Bài viết gốc: 183376
Tên lệnh: 44
lisp rải đối tượng !
Em có cái lisp rải đối tượng theo nhiều cách khác nhau rất hay thế này ạ, theo tùy chọn thì nếu
chọn số 1 thì sẽ thực hiện đoạn code 1
chọn số 2 thì sẽ thực hiện đoạn code 2
chọn số 3 thì sẽ thực hiện đoạn code 3
Em muốn có thêm tính năng nhớ giá trị lựa chọn của lần trước. Để tiện cho việc sử dụng. Tức là nếu đã từng chọn 1 1 lần thì lần sau chỉ việc...
>>
Em có cái lisp rải đối tượng theo nhiều cách khác nhau rất hay thế này ạ, theo tùy chọn thì nếu
chọn số 1 thì sẽ thực hiện đoạn code 1
chọn số 2 thì sẽ thực hiện đoạn code 2
chọn số 3 thì sẽ thực hiện đoạn code 3
Em muốn có thêm tính năng nhớ giá trị lựa chọn của lần trước. Để tiện cho việc sử dụng. Tức là nếu đã từng chọn 1 1 lần thì lần sau chỉ việc enter là sẽ chọn 1 tiếp.
Dưới đây là code !

;;;;;;;;;;;;;;;;;;=================== 44================
(DEFUN C:44 ()
(Command "undo" "begin")
(SETQ CMD (GETVAR "CMDECHO"))
(SETQ OSM (GETVAR "OSMODE"))
(initget "1 2 3")
(setq key
(getkword
"\n Nhap a=,Auto fix....2:Copy ra doan @n..... 3:so doi tuong :"
)
)
(if (not key)
(progn
(SETQ CMD (GETVAR "CMDECHO"))
(SETQ OSM (GETVAR "OSMODE"))
(SETVAR "CMDECHO" 0)
(PROMPT "\nArray object!")
(SETQ SLT (SSGET))
(initget 7)
(PROMPT "\nStart point:")
(SETQ SPT (GETPOINT))
(PROMPT "\nEnd point:")
(SETQ EPT (GETPOINT SPT))
(SETVAR "OSMODE" 0)
(SETQ GC (ANGLE SPT EPT))
(if ot1
(setq ot2 (getreal (strcat "\na= <" (rtos ot1) ">:")))
(setq ot1 (getreal "\na=:"))
)
(if ot2
(setq ot1 ot2)
)

(Setq NET ot1)
(SETQ DST (DISTANCE SPT EPT))
(SETQ NET1 (/ dst net))
(SETQ NET2 (+ net1 0.5))
(SETQ NET3 (fix net2))

(SETQ DST1 (/ DST NET3))
(SETQ DEM 1)
(WHILE (< DEM NET3)
(SETQ BDT (* DEM DST1))
(SETQ PT1 (POLAR SPT GC BDT))
(COMMAND "COPY" SLT "" SPT PT1)
(SETQ DEM (+ DEM 1))
)
(SETVAR "CMDECHO" CMD)
(command "OSMODE" "15359")
)
(PRINC)
)
;=============
(if (= key "2")
(progn
(Command "undo" "begin")
(command "_.ucs" "w")
(setq cmdo (getvar "cmdecho"))
(setvar "cmdecho" 0)
(princ "\nCopy array:")
(setq ss1 (ssget))
(if ss1
(progn
(initget 1)
(setq p1 (getpoint "\nFirst point: "))
(initget 1)
(setq p2 (getpoint p1 "\nSecond point: "))
(if (and ca:distance (or (= (type ca:distance) 'INT) (= (type ca:distance) 'REAL)))
(progn
(initget 6)
(setq d (getdist (strcat "\n@n=<" (rtos ca:distance 2 4) ">: ")))
(if d
(setq ca:distance d)))
(progn
(initget 7)
(setq ca:distance (getdist "\na= "))))
(command "_.ucs" "z" (* (/ 180 pi) (angle p1 p2)))
(command "_.array" ss1 "" "r" 1 (+ 1 (atoi (rtos (/ (distance p1 p2) ca:distance) 2 1))) ca:distance)
(command "_.ucs" "")))
(setvar "cmdecho" cmdo)
(command "OSMODE" "15359")
(Command "undo" "end")
(princ))
)
)
(if (= key "3")
(progn
(SETQ CMD (GETVAR "CMDECHO"))
(SETQ OSM (GETVAR "OSMODE"))
(SETVAR "CMDECHO" 0)
(PROMPT "\nArray object!")
(SETQ SLT (SSGET))
(initget 7)
(SETQ NET (GETINT "\nSo doi Tuong:"))
(PROMPT "\nDiem Dau:")
(SETQ SPT (GETPOINT))
(PROMPT "\nDiem cuoi:")
(SETQ EPT (GETPOINT SPT))
(SETVAR "OSMODE" 0)
(SETQ GC (ANGLE SPT EPT))
(SETQ DST (DISTANCE SPT EPT))
(SETQ DST1 (/ DST (- NET 1)))
(SETQ DEM 1)
(WHILE (< DEM (- NET 1))
(SETQ BDT (* DEM DST1))
(SETQ PT1 (POLAR SPT GC BDT))
(COMMAND "COPY" SLT "" SPT PT1)
(SETQ DEM (+ DEM 1))
)
(SETVAR "CMDECHO" CMD)
(SETVAR "OSMODE" OSM)
(command "OSMODE" "15359")
(PRINC)
)
)
)


Mong các anh trên diễn đàn bỏ chút thời gian giúp đỡ em ạ. Em xin chân thành cảm ơn diễn đàn !
<<

Filename: 183376_44.lsp
Tác giả: Thaistreetz
Bài viết gốc: 138191
Tên lệnh: tb
Nhờ các anh sửa hộ em lisp trung bình nhân này với

d

Filename: 138191_tb.lsp
Tác giả: mathan
Bài viết gốc: 183430
Tên lệnh: lbhg
Lisp thống kê cao độ ga và cống
Mình không có nhiều thời gian lắm nên lisp chưa được hoàn chỉnh tuyệt đối.
Nhưng bạn chứ dùng thử, có ý kiến gì báo lại mình sẽ khắc phục.
Khi nào có nhiều thời gian hơn, mình sẽ sửa nó 1 cách hoàn thiện
(lisp này còn nông dân lắm)
Sau khi lisp lập ra 1 bảng trong cad, bạn có thể dùng c2e.lsp trên cadviet có để chuyển sang excel bạn nhé
Mọi code lisp được lấy từ...
>>
Mình không có nhiều thời gian lắm nên lisp chưa được hoàn chỉnh tuyệt đối.
Nhưng bạn chứ dùng thử, có ý kiến gì báo lại mình sẽ khắc phục.
Khi nào có nhiều thời gian hơn, mình sẽ sửa nó 1 cách hoàn thiện
(lisp này còn nông dân lắm)
Sau khi lisp lập ra 1 bảng trong cad, bạn có thể dùng c2e.lsp trên cadviet có để chuyển sang excel bạn nhé
Mọi code lisp được lấy từ Cadviet - tôi chỉ là người xào nấu một chút thôi


;-----------------Lap bang thong ke ga ----------------------------
; Free lisp code from CADViet - edit by Mathan
(defun C:LBHG (/ TX TY kcach)
(setq diem (getpoint "\Chon vi tri lap bang... "))
(setq kcach (getreal "\Khoang cach cac text trong bang... "))
(prompt "\nBan can pick tung text theo thu tu Ten ho ga; cao do day va cao do dinh ga: ")
(setq dem 1 sdt 1)
(setq ss null)
(while (/= ss nil)
(if (= dem 1)
(progn
(setq ss (car (entsel "\nDS> Ten ho ga: ")))
(setq noidung (cdr (assoc 1 (entget ss))))
(setq diem1 (list (car diem) (- (cadr diem) (* sdt kcach))))
(command "TEXT" diem1 "" "" noidung)
))
(if (= dem 2)
(progn
(setq ss (car (entsel "\nDS> Cao do day: ")))
(setq noidung (cdr (assoc 1 (entget ss))))
(setq diem2 (list (+ (* 2 kcach) (car diem)) (- (cadr diem) (* (- sdt 1) kcach))))
(command "TEXT" diem2 "" "" noidung)
))
(if (= dem 3)
(progn
(setq ss (car (entsel "\nDS> Cao do dinh: ")))
(setq noidung (cdr (assoc 1 (entget ss))))
(setq diem3 (list (+ (* 4 kcach) (car diem)) (- (cadr diem) (* (- sdt 2) kcach))))
(command "TEXT" diem3 "" "" noidung)
(setq dem 0)
))
(setq dem (+ 1 dem))
(setq sdt (+ 1 sdt))
(princ)
)
)
Mong giúp được bạn một chút
<<

Filename: 183430_lbhg.lsp
Tác giả: phamthanhbinh
Bài viết gốc: 84218
Tên lệnh: tebo
đo kích thước của text

Chào bạn huuhau172,
Chưa rõ mục đích của bạn để làm gì, nên mình cứ trả lời theo ý mình hiểu, có gì không đúng mong bạn bỏ quá.
1/- Để xác định kích thước của text bạn có thể sử dụng hàm textbox trong autolisp bạn ạ. Hàm textbox này sẽ trả vế hai điểm tương ứng với đường chéo của hình chữ nhật bao quanh text. Do vậy nếu bạn lấy hiệu số tọa độ x giữa hai điểm...
>>

Chào bạn huuhau172,
Chưa rõ mục đích của bạn để làm gì, nên mình cứ trả lời theo ý mình hiểu, có gì không đúng mong bạn bỏ quá.
1/- Để xác định kích thước của text bạn có thể sử dụng hàm textbox trong autolisp bạn ạ. Hàm textbox này sẽ trả vế hai điểm tương ứng với đường chéo của hình chữ nhật bao quanh text. Do vậy nếu bạn lấy hiệu số tọa độ x giữa hai điểm này sẽ cho ra chiều rộng của text, còn hiệu số giữa hai tọa độ y của các điểm này sẽ cho ra chiều cao của text. Đó là với các text viết theo phương trục x (góc nghiêng dòng text là 0 độ.)
2/- Để tạo một khung bao chữ nhật cho text bạn có thể sử dụng lisp sau:

Có khung bao này rồi bạn có thể thoải mái mà ghi kích thước theo ý bạn muốn. Việc ghi kích thước này tuy không khó nhưng nó lại rất lằng nhằng do mỗi người có một quan điểm riêng về cách ghi kích thước (cái style dimension ấy). Do vậy tốt nhất là bạn tự ghi cho đúng ý mình. Còn nếu muốn dùng lisp thì bạn nên gửi cho mình cái style dimension mà bạn khoái nhất. Hề hề hề, vài điều thiển học mong bạn chớ chấp.
<<

Filename: 84218_tebo.lsp
Tác giả: mathan
Bài viết gốc: 183523
Tên lệnh: lbhg
Lisp thống kê cao độ ga và cống
Bác bach1212 có cái lisp lập bảng tọa độ ngon rùi, nên mình mượn lại biến tấu chút thì cái vụ nhập hố ga của bạn cũng tạm ổn rùi đấy
Bạn chạy lại bằng code lisp này xem nhé.
Nếu bảng chưa đẹp, đúng như bác phamthanhbinh nói, nên thêm mắm muối vào nữa cho vừa khẩu vị từng người.
Lưu ý rằng: free code lisp from CADViet - em chỉ xào nấu chút thui


: Ha Van Khanh...
>>
Bác bach1212 có cái lisp lập bảng tọa độ ngon rùi, nên mình mượn lại biến tấu chút thì cái vụ nhập hố ga của bạn cũng tạm ổn rùi đấy
Bạn chạy lại bằng code lisp này xem nhé.
Nếu bảng chưa đẹp, đúng như bác phamthanhbinh nói, nên thêm mắm muối vào nữa cho vừa khẩu vị từng người.
Lưu ý rằng: free code lisp from CADViet - em chỉ xào nấu chút thui


: Ha Van Khanh 3/2003
;
; * Chuong trinh duoc lap bang ngon ngu AUTOLISP.
; Free lisp code from CADViet - Edit by mathan
; ------------------------------------------------------------------------------
(vmon)
(defun C:LBHG (/ 1x 1y a1 2x 2y a2 3x 3y a3 b p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 p16x p16y p16 p17x p17y p17)
(setvar "cmdecho" 0)
(initget 7)
(setq osm (getvar "osmode" ))
(setvar "osmode" 0)
(command "-Style" "hoatbif" "hoatbif " "2.5" "" "" "" "" "")
(command "-Layer" "n" "Text" "c" "4" "Text" "")
(setq p1 (getpoint "\nChon diem dat bang thong ke :"))
(setq S (getint "\nSo ho ga can thong ke:"))
(setq p2 (polar p1 (/ (* Pi 3) 2) (+ 16 (* 8 S))))
(setq p3 (polar p2 0 91))
(setq p4 (polar p1 0 91))
(setq p5 (polar p1 0 21))
(setq p6 (polar p2 0 21))
(setq p7 (polar p5 0 35))
(setq p8 (polar p6 0 35))
(setq p9 (polar p5 (/ (* Pi 3) 2) 8))
(setq p10 (polar p4 (/ (* Pi 3) 2) 8))
(setq p12 (polar p9 0 35))
(setq p11 (polar p9 0 -10.5))
(setq p13 (polar p1 (/ (* Pi 3) 2) 16))
(setq p14 (polar p4 (/ (* Pi 3) 2) 16))
(setq p15 (polar p7 (/ (* pi 3 ) 2) 4))
(setq p16x (/ (+ (car p5) (car p7)) 2))
(setq p16y (/ (+ (cadr p9) (cadr p13)) 2))
(setq p17x (/ (+ (car p4) (car p7)) 2))
(setq p17y (/ (+ (cadr p9) (cadr p13)) 2))
(setq p16 (list p16x p16y))
(setq p17 (list p17x p17y))
(command "Plinewid" "0.5")
(command "Pline" p1 p2 p3 p4 p1 "")
(command "Line" p5 p6 "")
(command "Line" p12 p8 "")
(command "Line" p9 p10 "")
(command "Line" p13 p14 "")
(command "Array" "l" "" "Rec" S "1" "-8")
(command "text" "j" "mc" p11 "0" "Ten Ga" )
(command "text" "j" "mc" p15 "0" "Cao do" )
(command "text" "j" "mc" p16 "0" "D" )
(command "text" "j" "mc" p17 "0" "Y" )
(setvar "osmode" 1)
;-------------------------------------------------
; Phan chinh
(prompt "\nBan can pick tung text theo thu tu Ten ho ga; cao do dinh va cao do day ga: ")
(setq b 0)
(while (< b s )
(setq b (+ b 1))
(setq ss (car (entsel "\nDS> Ten ho ga: ")))
(setq tenga (cdr (assoc 1 (entget ss))))
(setq ss (car (entsel "\nDS> Cao do dinh: ")))
(setq cddinh (cdr (assoc 1 (entget ss))))
(setq ss (car (entsel "\nDS> Cao do day: ")))
(setq cdday (cdr (assoc 1 (entget ss))))
(setq 1x (/ (+ (car p1) (car p5)) 2))
(setq 1y (- (- (cadr p11) 4) (* 8 B)))
(setq a1 (list 1x 1y))
(setq 2x (/ (+ (car p5) (car p7)) 2))
(setq 2y (- (cadr p16) (* 8 B)))
(setq a2 (list 2x 2y))
(setq 3x (/ (+(car p7) (car p4)) 2))
(setq 3y (- (cadr p17) (* 8 B)))
(setq a3 (list 3x 3y))
(command "text" "j" "mc" a1 "0" tenga "" )
(command "text" "j" "mc" a3 "0" cddinh "" )
(command "text" "j" "mc" a2 "0" cdday "" )
)
)

Bác bach1212 dùng vui vẻ nhé.
Tiện thể cho e mượn code em đồ thêm mấy cái lisp khác nha.
Thank all
<<

Filename: 183523_lbhg.lsp
Tác giả: Nguyen Hoanh
Bài viết gốc: 5100
Tên lệnh: mr3
Viết Lisp theo yêu cầu


Bạn tắt OSNAP đi là ok. Nếu không, bạn thêm 1 đoạn mã vào và trở thành:

Filename: 5100_mr3.lsp
Tác giả: ainhandilac
Bài viết gốc: 5604
Tên lệnh: sub dv mul sum
Viết Lisp theo yêu cầu





có cái lisp copy được của bro nào tôi ko biết
nhờ các pac phân tích ho nhe
tôi cũng không hiểu nhiều lắm nhưng thấy dung cũng được lắm

Filename: 5604_sub_dv_mul_sum.lsp
Tác giả: ssg
Bài viết gốc: 6523
Tên lệnh: ll
Viết Lisp theo yêu cầu

I'm sorry! Đọc chưa kỹ yêu cầu của bạn.
Chỉ cần thêm hàm round và sửa 1 dòng lệnh là OK. Không cần set lại Units, bạn cứ để precision 0.0000 cũng được.
Code đã sửa:


Filename: 6523_ll.lsp
Tác giả: ssg
Bài viết gốc: 7082
Tên lệnh: md
Viết Lisp theo yêu cầu

Còn đây là đoạn lisp theo yêu cầu của bạn (biên tập lại của bác Hoành và bổ sung thêm tùy chọn Multi/Divide).
Tùy chọn ở dòng nhắc "Copy Multi-n/Divide-n :"
- Ví dụ bạn nhập M5, nó sẽ copy 5 lần với khoảng cách và định hướng theo 2 điểm First và Second
- Nếu nhập D11, copy 11 lần với khoảng cách bằng 2 điểm đó chia cho 11
- Không nhập gì cả, bấm Enter sẽ lấy mặc...
>>

Còn đây là đoạn lisp theo yêu cầu của bạn (biên tập lại của bác Hoành và bổ sung thêm tùy chọn Multi/Divide).
Tùy chọn ở dòng nhắc "Copy Multi-n/Divide-n :"
- Ví dụ bạn nhập M5, nó sẽ copy 5 lần với khoảng cách và định hướng theo 2 điểm First và Second
- Nếu nhập D11, copy 11 lần với khoảng cách bằng 2 điểm đó chia cho 11
- Không nhập gì cả, bấm Enter sẽ lấy mặc định là D2
Theo bạn, lấy mặc định D2 có hợp lý không? Nếu không, đề xuất trị số khác, mình sẽ sửa chương trình.


<<

Filename: 7082_md.lsp
Tác giả: tvduc
Bài viết gốc: 7648
Tên lệnh: cot00 dcot
Viết Lisp theo yêu cầu



Filename: 7648_cot00_dcot.lsp
Tác giả: duy782006
Bài viết gốc: 7652
Tên lệnh: cos
Viết Lisp theo yêu cầu
Bó tay rồi bạn. tác giả đoạn lisp này dủng thủ thuật khác tôi (dùng hàm substr) mà hàm này tôi vẩn đang mò nên không giúp bạn được. Tôi post cho bạn 1 lisp tương tự ngắn hơn cái này nếu bạn muốn chỉnh gì thì tôi còn biết đường mà lần.

lệnh : cos
Thao tác : gỏ lệnh cos -> chọn điểm cần đánh cot lisp hỏi bạn chọn có cot 0.000 lúc này chế độ bắt điểm chuyễn về...
>>
Bó tay rồi bạn. tác giả đoạn lisp này dủng thủ thuật khác tôi (dùng hàm substr) mà hàm này tôi vẩn đang mò nên không giúp bạn được. Tôi post cho bạn 1 lisp tương tự ngắn hơn cái này nếu bạn muốn chỉnh gì thì tôi còn biết đường mà lần.

lệnh : cos
Thao tác : gỏ lệnh cos -> chọn điểm cần đánh cot lisp hỏi bạn chọn có cot 0.000 lúc này chế độ bắt điểm chuyễn về perpendicula là bắt điểm vuông góc bạn bắt vào đường thẳng có cao độ 0.000 ; lisp hỏi tỉ lệvẻ của bạn (hỏi một mét bạn vẻ bằng bao nhiêu) bạn nhập vào là xong.
lần sau thực hiện lệnh cũng y như vậy. nhưng lisp nhớ giá trị một mét mà bạn đã báo nên bạn chỉ cần enter chứ không cần nhập nửa.

Bạn có thể chỉnh lisp này cho giống với lisp ban đang có (tôi dùng thế này quen tay rồi nên không chỉnh)



<<

Filename: 7652_cos.lsp
Tác giả: thiep
Bài viết gốc: 71966
Tên lệnh: d2c
Viết Lisp theo yêu cầu

Lisp bạn cần có phản cái này không?

Filename: 71966_d2c.lsp
Tác giả: ketxu
Bài viết gốc: 183595
Tên lệnh: test
Đặt LineTypeScale cho toàn bộ các đối tượng
840244 chú ý quy định về đặt yêu cầu ở box nhé!

Đặt Linetype:

(defun C:test ( / ss d);
(grtext -1 "Free Lisp from Cadviet @Ketxu")
(cond ( (and (setq ss (ssget (list (cons 0 "*LINE,ARC,CIRCLE"))))
(setq d (getreal "\nLineType Scale :"))
(vl-load-com)
(setq ss (vla-get-ActiveSelectionSet (vla-get-ActiveDocument (vlax-get-acad-object))))
)
(vlax-for obj ss...
>>
840244 chú ý quy định về đặt yêu cầu ở box nhé!

Đặt Linetype:

(defun C:test ( / ss d);
(grtext -1 "Free Lisp from Cadviet @Ketxu")
(cond ( (and (setq ss (ssget (list (cons 0 "*LINE,ARC,CIRCLE"))))
(setq d (getreal "\nLineType Scale :"))
(vl-load-com)
(setq ss (vla-get-ActiveSelectionSet (vla-get-ActiveDocument (vlax-get-acad-object))))
)
(vlax-for obj ss (vla-put-LinetypeScale obj d))
)
((princ "\nError!"))
)
(princ)
)

<<

Filename: 183595_test.lsp
Tác giả: Doan Van Ha
Bài viết gốc: 183593
Tên lệnh: ht
Đặt chiều cao text, mtext và chỉnh Linetype scale ?


Thay đổi chiều cao Text/Mtext

Filename: 183593_ht.lsp
Tác giả: Doan Van Ha
Bài viết gốc: 183606
Tên lệnh: ht
Đặt chiều cao text, mtext và chỉnh Linetype scale ?

Sửa lại theo y/c của bạn đây.

Filename: 183606_ht.lsp

Trang 63/317

63