- 积分
- 24
- 注册时间
- 2005-5-6
- 仿真币
-
- 最后登录
- 1970-1-1
|
楼主 |
发表于 2006-12-17 13:48:25
|
显示全部楼层
来自 广西桂林
不用Command函数,使用Entmake函数创建实体,代码如下
(defun DTR(X)
;;角度转弧度
(* X (/ pi 180.0))
)
(defun Add_LwPline(PntLst C / EntLst)
;;创建多段线,PntLst顶点表,C封闭为1开放为0
(setq EntLst (append '((0 . "LWPOLYLINE")
(100 . "AcDbEntity")
(100 . "AcDbPolyline")
)
(list (cons 90 (length pntlst))
(cons 70 C))
(mapcar '(lambda (x) (cons 10 x)) PntLst)
))
(entmake EntLst)
)
(defun WJX(P0 R / DA P1 P2 P3 P4 P5)
;;绘制五角星,P0为中心点,R为半径
(setq DA (/ 360 5))
(setq P1 (polar P0 (DTR 90) R)
P2 (polar P0 (DTR (+ 90 DA)) R )
P3 (polar P0 (DTR (+ 90 (* 2 DA))) R)
P4 (polar P0 (DTR (+ 90 (* 3 DA))) R)
P5 (polar P0 (DTR (+ 90 (* 4 DA))) R)
)
(Add_LwPline (list p1 p3 p5 p2 p4) 1)
)
;;以下调用WXJ函数
(WJX '(64 150) 12)
(WJX '(90.6 158.7) 5)
(WJX '(90.0 139.5) 5)
(WJX '(77.1 125.3) 5)
(WJX '(58.2 122.6) 5)
(Add_LwPline '((40 170)(190 170) (190 80)(40 80)) 1) |
|