![](https://www.cadviet.com/forum/uploads/set_resources_1/84c1e40ea0e759e3f1505eb1788ddf3c_pattern.png)
![](https://www.cadviet.com/forum/uploads/monthly_2017_09/V.png.901d629549c90aaf2aada39033262c3f.png)
VUVUZELA
-
Số lượng nội dung
210 -
Đã tham gia
-
Lần ghé thăm cuối
-
Ngày trúng
4
Bài đăng được đăng bởi VUVUZELA
-
-
Tên font trong lisp
trong AutoLisp
Đây bạn ơi
(defun c:TL () (setvar "CMDECHO" 0) ;;;Nhap so lieu ty le ban ve (if (= scale nil) (setq *scale 100.00) (setq *scale scale) ) (setq scale (getreal (strcat "\nTi le ban ve: <" (rtos *scale 2 2) ">") ) ) (if (= scale nil) (setq scale *scale) ) ;;;Nhap so lieu chieu cao TEXT (if (= chu nil) (setq chu1 2.00) (setq chu1 chu) ) (setq chu (getreal (strcat "\nChieu cao cua TEXT: <" (rtos chu1 2 2) ">") ) ) (if (= chu nil) (setq chu chu1) ) (setvar "dimzin" 0) (setvar "dimfit" 0) (setvar "dimjust" 0) (setvar "dimfit" 2) (setvar "dimtad" 1) (setvar "dimtih" 0) (setvar "dimtix" 0) (setvar "dimtoh" 0) (setvar "dimtofl" 1) (setvar "dimdec" 0) (setvar "DIMTOFL" 0) (setvar "dimsd1" 0) (setvar "dimsd2" 0) (setvar "dimse1" 0) (setvar "dimse2" 0) ;;;gan color (setvar "dimclrd" 6) (setvar "dimclre" 6) (setvar "dimclrt" 3) (setvar "dimdli" (/ chu 2)) (setvar "dimexe" (/ chu 2)) (setvar "dimexo" (/ chu 2)) (setvar "dimasz" (/ chu 2)) (setvar "dimlfac" (/ scale 10)) (setvar "dimtxt" chu) (setvar "dimgap" (/ chu 2)) (if (not (tblsearch "Style" "VNI-HELVE")) (command "style" "VNI-HELVE" "Vni-Helve" "" "1.00" "" "" "" "") (command "style" "VNI-HELVE" "" "" "" "" "" "" "") ) ;;;GAN BIEN CHO Text STYLE (if (not (tblsearch "Style" "DIMTEXT")) (command "style" "DIMTEXT" "VN_vni.SHX" "" "0.8" "" "" "" "") (command "style" "DIMTEXT" "" "" "" "" "" "" "") ) (setvar "DIMTXSTY" "DIMTEXT") (setq tendim (strcat "TL " (rtos scale 2 0))) (if (not (tblsearch "dimstyle" tendim)) (command "-dimstyle" "save" tendim) (command "-dimstyle" "save" tendim "Y") ) )
-
Tội cho thành viên này quá ! Lâu quá rồi không thấy cao thủ CADVIET nào giúp cả
Cũng như mình post bài "Tại sao không cập nhật dữ liệu mở rộng" mà cũng không thấy xuất hiện Cao Thủ
Vì vậy, sau thời gian nghiên cứu mình sẽ giúp cho bạn đoạn mã này nhé
Mong rằng bạn sẽ thích nó. Có gì pm cho mình
(defun c:WIPE (/) (setvar "cmdecho" 0) (command "_.undo" "be") (setvar "regenmode" 1) (setq osmode (getvar "osmode")) (setq colo (getvar "clayer")) (if (not (tblsearch "layer" "WIPE-TAM")) (command "layer" "n" "WIPE-TAM" "color" "3" "WIPE-TAM" "s" "WIPE-TAM" \n) (command "layer" "s" "WIPE-TAM" \n) ) (setvar "osmode" 0) (command "ucs" "") (setq abc (entsel "\nChon doi tuong :")) (setq KC (getreal "\nNhap khoang cach de chia cung : ")) (COMMAND "MEASURE" ABC KC) (setq ss (ssget "X" '( (-4 . " (0 . "POINT") (8 . "WIPE-TAM") (-4 . "AND>") ) ) ) (command "pline") (setq x 0) (repeat (SSlength ss) (setq ent (ssname ss x)) (setq ents (entget ent)) (setq pt (cdr (assoc 10 ents))) (command pt) (setq x (+ x 1)) ) (command "") (COMMAND "erase" ss "") (setvar "clayer" colo) (setvar "osmode" osmode) (command "_.undo" "e") )
-
Bó tay, hiểu chết liền
Chắc là bạn mới tập tành viết lisp phải ko? Copy ở đâu thì phải
Cú pháp viết của bạn chưa chuẩn nên lỗi tùm lum
Vả lại nếu bạn mới viết lisp thì nên viết dialog bằng Tiếng Việt không có dấu để anh em CADVIET có thể sửa lỗi giúp
Chứ kiểu này thì chịu à.
KInh nghiệm của tôi thì mới vô viết lisp thì khoan viết hộp thoại đã. Khi nào viết câu cú lệnh líp chuẩn thì mới viết DIALOG
-
chuyen file dxf
trong AutoLisp
Bạn vô google tìm phần mềm này doadload về : DWG2DXF.exe
Key là :
E-mail :mobifun207@gmail.com
Registration code :ea2ff35217e9bc020e96ab3734
-
Bạn cũng có thể dùng hàm này để viết vô regedit và sau này load lên để đọc lại
Examples
_$ (vl-registry-write "HKEY_LOCAL_MACHINE\\SOFTWARE\\Khungten" "" "Giai doan")
"1"
_$ (vl-registry-read "HKEY_LOCAL_MACHINE\\SOFTWARE\\Khungten" "Giai doan")
"1"
-
Ghi tọa độ?
trong AutoLisp
Đây nè bạn ơi. Dễ òm à. Lệnh tắt là TOALOA
(DEFUN EXCUTE (/ n P TX TY)
(setq str (strcat "\nPhan so le muon lay ["
(itoa sl)
"] (press Enter or Space for get default): "
)
)
(setq n (getint str))
(if (/= n Nil)
(setq sl n)
)
(While T
(setq P Null)
(setq caochu 2.00)
(princ "\nPick a point or press ESC for exit:")
(setq P (getpoint))
(if (/= P Nil)
(progn
(setq TX (strcat "X=" (rtos (Car P) 2 sl)))
(setq TY (strcat "X=" (rtos (Cadr P) 2 sl)))
(command "text" "J" "BC" p caochu "0" Tx "")
(command "text" "J" "TC" p caochu "0" Ty "")
;;;(command "-INSERT" "TD" P "1" "1" "0" TX TY)
)
)
) ;End While
)
(DEFUN INIT ()
(if (= sl Nil)
(setq sl 2)
)
)
(DEFUN C:TOALOA ()
(INIT)
(EXCUTE)
)
-
1
-
-
(defun c:bg (/)
(setvar "cmdecho" 1)
(setvar "cmdecho" 0)
(command "undo" "be")
(setq osmode (getvar "osmode"))
(setvar "edgemode" 0)
(setvar "osmode" 32)
(setq ss (entsel))
(setq diem (cadr ss))
(setq pt (getPoint "\nChon diem be gay:"))
(command "break" ss "f" pt pt)
(setvar "osmode" osmode)
(command "undo" "e")
)
-
Hỏi về hàm open
trong AutoLisp
Em không hiểu ở đây file descriptor là cái gì ạ , thấy trong ví dụ của AutoCAD có cái đại loại như :Thế cái này có giống như address của file kô ạ ?
I/O functions có phải là Input/Output files không ạ ?
E còn một câu hỏi nữa là làm sao khi dùng ssget để select a line, thì sau đó ta sẽ biết được start point và end point của line được chọn ạ ?
khi dùng ssget để chọn line thì bạn dùng cú pháp này
(setq ss (ssget '(
(-4 . "
(0 . "LINE")
(-4 . "AND>")
)
)
)
sau đó dùng lệnh repeat để tách ra từng line
(setq x 0)
(setq caochu 5.00)
(repeat (sslength ss)
(setq ent (ssname ss x))
(setq ents (entget ent))
(setq pt1 (cdr (assoc 10 ents)))
(setq pt2 (cdr (assoc 11 ents)))
;;;từ đây bạn có thể viết tiếp để in ra điểm đầu, cuối của line
(setq x (+ x 1))
)
Keke
-
Nếu vậy thì LCD sử dụng Lisp của anh gia_bachcái này dễ lắm bạn oi
Bạn bấm lệnh tắt : ssx
chọn block
bấm bím F2 thì nó sẽ hiện ra có bao nhiêu đối tượng có cùng tên với block bạn chọn
tù đó bạn sẽ biết số block có trên bản vẽ
LISP voi thuoc tinh
trong AutoLisp
Đã đăng · Trả lời báo cáo
(setvar "regenmode" 1)
Nếu bạn muốn tìm hiểu thêm về các biến trong AutoCad trong 1 bản vẽ đang xài biến gì
Đánh lệnh :
Command : setvar
Command : ?
Command : Enter