(setq dl (getstring "\nDo lon:"))
(setq nd (getstring 5"\nNoi dung:"))
Bạn để ý nhé:
+Dòng hỏi độ lớn không có số 5 vì độ lớn không cần nhập khoảng cách.
+Dòng hỏi nội dung có số 5 vì nội dung có thể có chứa khoảng cách.
(defun c:doanthang ()
(setq a (getpoint "\nChon diem: "))
(setq b (getpoint a"\nChon diem: "))
(command ".line" a b "")
(setq dt (getstring "\nDo lon:"))
(setq nd (getstring 5"\nNoi dung:"))
(setq c (list (/ (+ (car a) (car b)) 2) (/ (+ (cadr a) (cadr b)) 2)))
(command "-style" "tlkt" "VNI-HELVE" "0" "1" "0" "n" "n")
(command ".TEXT" "m" c dt 0 nd)
(princ)
)
Tới bây giờ nếu đã nắm được hết những điều mình đã viết trên thì bạn có thể viết được khối thứ rồi đấy. Cứ ngồi suy nghĩ và thử viết vài đoạn xem. Khi mà chạy cái lisp do chính mình viết thì cảm giác sướng ghê lắm cứ thử xem!
*Mình ra cái đề bài để chủ nhật bạn viết thử nhé, thứ 2 mình sẽ có đáp án:
-Đề: hỏi chọn 2 điểm, hỏi độ lớn, viết ra tại điểm thứ 2 dòng text có độ lớn vừa nhập, nội dung là giá trị khoảng cách hai điểm.
-Gợi ý:
+Dùng hàm distance để lấy khoảng cách giữa 2 điểm.
em dang hoc mấy bài này của anh. chổ nào ko hiểu thì em hỏi anh trả lởi jùm em nha!
Trả lờiXóa(defun c:btap1(/ a b c th ang)
Trả lờiXóa(setq tho (getvar "textsize"))
(setq a (getpoint "\nChon diem dau: ")
b (getpoint a "\nChon diem cuoi: ")
c (distance a b)
th (getstring "\nChieu cao Text ")
ang (/ (* 180 (angle a b)) pi)
)
(command "text" "m" b th ang c "")
(setvar "textsize" tho)
)
em có thêm vào vài dòng ngoài đề bài nữa. heheee
Bạn cẩn thận lưu và trả lại textsize là ok rồi. Chắc là bạn cũng đã tiếp xúc với lisp 1 thời gian rồi. Chúc bạn ngày càng tiến xa trên con đường chinh phục lisp.
Trả lờiXóaEm dã làm được bài này rồi cám ơn anh Duy nhiều
Trả lờiXóaMến chào anh
Jula_julo@yahoo.com.vn
Anh Duy ơi!
Trả lờiXóaCho e hỏi là code của lệnh "insert" block ATT có sẵn vào bản vẽ là như thế nào được không ạ!
Bạn chưa nói rỏ là block ATT của bạn có bao nhiêu thông số cần nhập vào nên mình trả lởi chung như này nhé:
Trả lờiXóa(command "INSERT" "c:\\tailieukythuat\\dwg\\caodo.dwg" diemchen tilex tiley goc giatri1 gia tri2 giatri3)
Cứ bạn có bao nhiêu gí trị att thì gỏ bấy nhiêu giatri vào là ok