13648893846 发表于 2019-1-24 09:50:34

选择集或者图元名曲线判断

本帖最后由 13648893846 于 2019-1-24 09:51 编辑


[*];;[功能]选择集或者图元名曲线判断
[*];;[用法](LC:checkiscurve (ssget))(LC:checkiscurve (car(entsel)))
[*];;[作者]BY 老仓测绘上班记
[*](defun LC:checkiscurve (en / PD) ;检查是否是曲线
[*]    (cond
[*]      ((= (type en) 'ENAME)
[*]      (setq pd (and en (wcmatch (try-get-DXF en 0) "ELLIPSE,CIRCLE,ARC,RAY,*LINE")))
[*]      (if pd en)
[*]      )
[*]      ((= (type en)'PICKSET)
[*]      (setq en (LC:ss-sslist en))
[*]      (setq en (vl-remove-if-not '(lambda(x) (and en (wcmatch (try-get-DXF x 0) "ELLIPSE,CIRCLE,ARC,RAY,*LINE"))) en))
[*]      )
[*]    )
[*])
[*]

[*](defun try-get-dxf (en code / ty)
[*](setq ty(type en))
[*](cond
[*]    ((= 'list(type code))(mapcar '(lambda(x)(try-get-dxf en x))code));获取多个组码
[*]    ((= ty 'ENAME)
[*]      (cdr (assoc code (entget en '("*")))))
[*]    ((= ty 'list)
[*]      (mapcar '(lambda(x)(try-get-dxf x code)) en))
[*]    ((= ty 'PICKSET)
[*]      (try-get-dxf (try-ss2EnList en)code))
[*])
[*])

20060510412 发表于 2019-1-24 10:24:58

请问这个函数的具体作用是什么呢

13648893846 发表于 2019-1-24 23:08:04

区分出是不是线,具体应用得看你自己了
页: [1]
查看完整版本: 选择集或者图元名曲线判断