Thứ Hai, 13 tháng 7, 2009

Hướng dẫn viết lisp bài 6

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ự!
Bây giờ bỏ bớt cái hình tròn tâm b đường kính ab đi.
Áp dụng lệnh Array với cái hình tròn tâm a đường kính ab.
Cho nó Array thành 8 đối tượng quanh điểm c nhé.
-Cú pháp lệnh Array như sau:
+Vì trong lệnh Array có hỏi chọn đối tượng nhưng mình muốn nó chọn tự động cái hình tròn thì làm sao? Giải pháp đưa ra là lựa chọn last nghĩa là chọn đối tượng mới tạo ra muốn vậy cái đường tròn này mình đừng vẽ vội mà chỉ vẽ nó trước khi thực hiện lệnh Array thôi.
(command ".circle" a b)
(command ".array" "last" "" "p" c "8" "" "")
+Giải thích dòng trên: gọi lệnh Array, gỏ last để chọn đối tượng vừa tạo trước đó, enter kết thúc chọn đối tượng, gõ p để chọn kiểu Array là Polar, chọn điểm tâm quay là c, gỏ 8 để xác định số lượng tạo ra là 8, enter hai lần để kết thúc lệnh Array.

(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 ".circle" c a)
(command ".circle" a b)
(command ".array" "last" "" "p" c "8" "" "")
(princ))


*Chạy thử đoạn trên. Khớ khớ đẹp chưa có nguyên cái bông rồi nhưng sao nhiều cánh quá á? Yên tâm sẽ có cách cho bạn quyết định số lượng cánh của cái bông này…….



Không có nhận xét nào:

Đăng nhận xét