
 - (defun entity:make-pline (plist convexity elevation closed)
- "生成二维多段线.POLYLINE
- 参数:
- plist:端点坐标点表,如:((x1 y1 z1) (x2 y2 z2) (x2 y2 z2))或((x1 y1) (x2 y2) (x2 y2))
- convexity:各点与下一点的凸度(个数同坐标点表),可为nil
- elevation:标高
- closed:是否闭合,1:闭合,0:不闭合"
- "返回值: 生成多段线的图元名"
- "示例: (entity:make-pline '((0 0 0) (5000 0 0) (5000 5000 0) (0 5000 0)) '(-1.0 -0.5 0 -0.3) 100 1)"
- (if (= closed 1)
- (entmake
- (list '(0 . "POLYLINE") '(66 . 1) '(70 . 1) (cons 38 elevation)))
- (entmake (list '(0 . "POLYLINE") '(66 . 1) (cons 38 elevation))))
- (if convexity
- (mapcar
- '(lambda (x y)
- (entmake (list (cons 0 "VERTEX")
- (cons 10 x)
- (cons 42 y)
- )))
- plist
- convexity
- )
- (mapcar
- '(lambda (x)
- (entmake (list (cons 0 "VERTEX")
- (cons 10 x)
- )))
- plist
- ))
- (entmake '((0 . "SEQEND")))
- (entlast)
- )
|