autolisp 画多段线
时间: 2023-07-31 08:12:40 浏览: 576
要使用AutoLISP在AutoCAD中画多段线,可以使用LWPOLYLINE命令。下面是一个简单的示例程序:
```lisp
(defun c:mline ()
(setq points '()) ; 创建一个空点列表
(while
(setq pt (getpoint "\n输入下一个点或 [闭合(C)]: "))
(setq points (cons pt points))
(if (y-or-n-p "是否闭合多段线?")
(progn
(setq points (reverse points))
(setq points (append points (list (car points)))) ; 在列表末尾添加第一个点
(setq points (reverse points))
(setq pline (entmakex (list (cons 0 "LWPOLYLINE") (cons 10 (car points)) (cons 90 (length points)) (cons 70 1) (cons 43 0.0) (cons 38 (getvar 'ltscale)) (cons 39 0) (cons 210 (list 0.0 0.0 1.0))))) ; 创建多段线实体
(entmake (list (cons 0 "SEQEND")))) ; 添加SEQEND实体
)
)
(princ)
)
```
运行程序后,输入多个点,最后选择是否闭合多段线。如果选择闭合,则程序将在多段线末尾添加第一个点,并创建多段线实体。程序还使用了一些实体属性,如点坐标、点数、闭合标志、线宽、线型比例、颜色和方向。
阅读全文
相关推荐











