Thứ Ba, 10 tháng 11, 2009

Hướng dẩn viết lisp bài 8:

Bạn nên theo dỏi theo tên bài viết tăng từ nhỏ tới lớn thì mới đúng trình tự!
**Rồi bây giờ bỏ hết nấy cái Circle và Array đi mình đi vào viết text.
-Phần viết text bằng lisp là rất phiền phức ví dụ để viết text dùng dòng sau:
(command ".TEXT" "m" c 250 0 "tailieukythuat.com")
-Giải thích: gọi lệnh text nhập m để định kiểu canh lề là Middle chọn điểm viết ra là c độ lớn text là 250 góc quay là 0 nội dung là tailieukythuat.com.
+Trường hợp Text style hiện hành có Text Height bằng 0 thì không cấn đề gì.
+Trường hợp Text style hiện hành có Text Height khác 0 thì lệnh text sẽ bỏ qua phần hỏi Text Height (độ lớn) nên với cú pháp trên số 250 sẽ được gán cho góc quay của text, số 0 gán cho nội dung text và một mớ lỗi.
-Giải pháp: Phải đảm bảo Text style hiện hành có Text Height bằng 0 bằng cách< trước khi thực hiện lệnh viết text phải có dòng tạo Text style như sau:
(command "-style" "tlkt" "VNI-HELVE" "0" "1" "0" "n" "n")
+Mục đích tạo Text style có tên tlkt fonts VNI.HELVE (bạn thích font nào thì chọn font đó), Text Height bằng 0, các cái đằng sau bạn cứ chấp nhận vậy đi khỏi suy nghỉ (nói chung để kết thúc việc tạo kiểu chử bằng lisp thì phải đủ cú pháp như vậy)
+Sau khi tạo ra Text style này sẽ hiện hành và đoạn viết text phía sau sẽ đảm bảo chạy đúng.


(defun c:doanthang ()
(setq a (getpoint "\nChon diem: "))
(setq b (getpoint a"\nChon diem: "))
(command ".line" a b "")
(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 250 0 "tailieukythuat.com")
(princ)
)


Chạy đoạn trên sẽ thấy sau khi chọn 2 điểm sẽ vẽ ra:
+ Line ab.
+ Text tailieukythuat.com tại trung điểm ab.

1 nhận xét:

  1. Nguyễn Cao Cườnglúc 06:06 11 tháng 6, 2010

    EM ĐÃ LÀM ĐƯỢC RỒI CÁM ƠN ANH NHIỀU

    Trả lờiXóa