马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
以下方法仅适用 ModelSpace
设置标记

- (defun setmark (/ e)
- (if (setq e (entlast));_存在 实体 时才标记
- (setq #mark (vlax-ename->vla-object e))
- )
- )
获取标记后Object列表,注意标记实体是否存在和是否删除

- (defun getss (/ ms n obj olst)
- (setq ms (vla-get-modelspace
- (vla-get-activedocument (vlax-get-acad-object))
- )
- )
- (if #mark;_是否存在标记Object
- (if (not (vlax-erased-p #mark));_标记Object是否删除
- (progn
- (setq n (vla-get-count ms))
- (while (not (equal (setq obj (vla-item ms (setq n (1- n)))) #mark));_往前数数
- (setq olst (cons obj olst))
- )
- (setq #mark nil);_获取后将标记Object清空
- olst
- )
- )
- (prong;_不存在标记就是全选即
- (vlax-for obj ms
- (setq olst (cons obj olst))
- )
- (reverse olst)
- )
- )
- )
|