hndwl 发表于 2007-9-8 19:07:00

请问陈老师,怎么用ssget "f"来选择线内的目标呢?我试了很多方法都不行,恳请指教.多谢了.

xgr 发表于 2007-9-8 22:24:00

<p>你仔细去看看ssget函数的用法,就会知道的。</p><p class="body">创建一个选择集,该选择集由 pt_list 所定义的多边形包含或与之相交的所有图元组成:</p><p class="prompt_end">命令: (ssget "_CP" pt_list)
        </p><p class="prompt_end">点表pt_list由闭合多段线获得,</p><p class="prompt_end">得到选择集后,执行选择集过滤操作,就可以得到你想要的实体。</p>

hndwl 发表于 2007-9-10 15:51:00

xgr发表于2007-9-8 22:24:00static/image/common/back.gif你仔细去看看ssget函数的用法,就会知道的。创建一个选择集,该选择集由 pt_list 所定义的多边形包含或与之相交的所有图元组成:命令: (ssget \"_CP\" pt_list)&nbsp;点表pt_list由闭合多段线

<p>用此方法会把pt_list 所定义的多边形外围相邻的也选上的。我们的目的是只选择线里面的,外面和线相邻的不能选取。</p>

狂刀无痕 发表于 2007-9-10 17:56:00

cp 改为wp

hndwl 发表于 2007-9-10 18:06:00

狂刀无痕发表于2007-9-10 17:56:00static/image/common/back.gifcp 改为wp

<p>改为"wp"时,在框内且和框挨着的又选不上了。</p>

hndwl 发表于 2007-9-10 19:19:00

能有高手指点一下吗?衷心感谢!

Andyhon 发表于 2007-9-10 19:51:00

hndwl发表于2007-9-10 18:06:00static/image/common/back.gif改为\"wp\"时,在框内且和框挨着的又选不上了。

<p>是古怪些? 可否提供测试样本<br/></p>

hndwl 发表于 2007-9-10 20:16:00

就向本图一样,我只想选择白线后,自动的里面的2、3、4线的选择集,而不会选择5号线,应该是明白了吧,谢谢!

Andyhon 发表于 2007-9-10 21:24:00

<p>本图3与5有分隔线吗?得先厘清</p><p>因为古怪所以才想要直接查询实体数据<br/>您直接给个您调试过不了关的图形文件才好查呀</p>

carrot1983 发表于 2007-9-11 09:14:00

本帖最后由 作者 于 2007-9-11 9:20:35 编辑

楼主的意思是:
通过最外边缘的粗白色线构成的范围A,
然后用"WP"或"CP"的选择方式来选择,范围A里面的
细多段线构成的多个封闭的范围B1,B2...Bn的逐个面积....
所以陈老师2楼,可能误解了吧...
(defun get_ptlist(ent / ename elist ptlist)
(setq ename (car ent))
(setq elist (entget ename))
(foreach n elist
    (if (= 10 (car n))
      (setq ptlist (cons (cdr n) ptlist))
    )
)
(reverse ptlist)
)

;;(setq ent (entsel      "\n选择粗白色多段线:"))
;;(setq pt_list (get_ptlist ent))      
;;(ssget "WP"pt_list filter-list)      ;_建立包含在符合 filter- list 的 pt_list 所定义的多边形中所有图元的选择集


页: 1 [2] 3
查看完整版本: [求助]请问如何实现点选闭合多义线获得ssget集?