明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3684|回复: 13

经过一点的实体的选择

  [复制链接]
发表于 2010-8-16 10:25:00 | 显示全部楼层 |阅读模式

                Dim pc As New Point3dCollection
                pc.Add(p)
                Dim obc As ObjectId()
                Dim acTypValAr(0) As TypedValue
                acTypValAr.SetValue(New TypedValue(DxfCode.Start, "*Line"), 0)
                Dim acSelFtr As SelectionFilter = New SelectionFilter(acTypValAr)
                Dim acSSPrompt As PromptSelectionResult = ed.SelectFence(pc, acSelFtr)
                Dim acSSet As SelectionSet = acSSPrompt.Value
                If Not acSSet Is Nothing Then
                    obc = acSSet.GetObjectIds

                End if

 

好像SelectFence不支持经过一点的选择,该怎么弄呢?

发表于 2010-8-16 10:43:00 | 显示全部楼层

你的线或多段线是端点在这个点?还是经过

 

 楼主| 发表于 2010-8-16 10:48:00 | 显示全部楼层

我本来想是经过这个点,如果是端点就在这个线上的话更好

 楼主| 发表于 2010-8-16 11:01:00 | 显示全部楼层

另外,上次问的经过两点的选择好像也有问题,检索结果有时候多有时候少

 Dim pc As New Point3dCollection
                pc.Add(p1)
                pc.Add(p2)
                Dim obc As ObjectId()
                Dim acTypValAr(0) As TypedValue
                acTypValAr.SetValue(New TypedValue(DxfCode.Start, "*Line"), 0)
                Dim acSelFtr As SelectionFilter = New SelectionFilter(acTypValAr)
                Dim acSSPrompt As PromptSelectionResult = ed.SelectFence(pc, acSelFtr)
                Dim acSSet As SelectionSet = acSSPrompt.Value
                If Not acSSet Is Nothing Then
                    obc = acSSet.GetObjectIds
                Else : Return False

发表于 2010-8-16 15:24:00 | 显示全部楼层

端点在pt1

            ed.SelectAll(
                new SelectionFilter(
                    new TypedValue[]
                    {
                        new TypedValue(0, "*line"),
                        new TypedValue(-4, "<or"),
                        new TypedValue(10, pt1),
                        new TypedValue(11, pt1),
                        new TypedValue(-4, "or>")
                    }));

 楼主| 发表于 2010-8-16 17:27:00 | 显示全部楼层

版主写的意思是不是选择*Line,并且起点和其他点都是pt1啊?为啥用or呢?搞不懂。但是挺好玩,这种结合搞懂的话,

我也想写 :选择块名为name,并且覆盖点pt1的块参照过滤

 楼主| 发表于 2010-8-17 08:46:00 | 显示全部楼层
???
发表于 2010-8-17 12:48:00 | 显示全部楼层

你的问题一直问的都是不明不白的,想帮都没法帮,汗

把你的问题描述清楚

另外,不要同一个问题到处开新帖

 楼主| 发表于 2010-8-17 12:51:00 | 显示全部楼层
就是按照版主写的过滤语句,能不能过滤如下条件的:快名为brfName,且覆盖一点(或者说经过)p的块参照
发表于 2010-8-17 12:59:00 | 显示全部楼层

不行

如果是插入点可以,经过不行

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-26 00:52 , Processed in 0.177358 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表