lisp点转为vla_晓东CAD家园-论坛-A/VLISP-ssget得到的选择集,转为vla集合,谁有好办法?-总结-根据各位高手的帮忙,总结如下: - Powered by Discuz!...

本文汇总了将LISP选择集转换为VLA选择集的三种方法,包括使用vlax-map-Collection、通过名称转换以及创建新的VLA选择集。详细代码示例提供了解决方案。
摘要由CSDN通过智能技术生成

;;161.1 [功能] 选择集->VlaSS集合

;;(vlax-map-Collection (ss->vlass ss) 'vla-delete)

(defun ss->vlass (ss)

(command "_.select" ss "")

(vla-get-activeselectionset

(vla-get-ActiveDocument (vlax-get-acad-object))

)

)

;;161.2 [功能] lisp选择集或图元转为vla选择集 By namezg

;;(vlax-map-Collection (SS->vlaSS ss) 'vla-delete)

(defun SS->vlaSS1 (ss / *DOC* I OBJLST SARRAY SSET VLA)

(setq *DOC* (vla-get-ActiveDocument (vlax-get-acad-object)))

(setq SSet (vla-get-ActiveSelectionSet *DOC*))

(vla-Clear SSet)      ;清空选择集

;;得到VLA物体列表

(repeat (setq i (sslength ss))

(setq vla (vlax-ename->vla-object (ssname ss (setq i (1- i)))))

(setq objlst (cons vla objlst))

)

(setq  sArray (vlax-make-safearray

vlax-vbobject

(cons 0 (1- (length objlst)))

)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值