zhtom 发表于 2003-5-5 20:51:00

如何在一个样条曲线区域内选取实体?

本帖最后由 作者 于 2003-5-5 20:51:22 编辑

条件:一个封闭的样条曲线,曲线中间区域和曲线外区域都有很多的点
目的:用vba自动筛选出封闭曲线区域中的点并且放在另一个图层上

efan2000 发表于 2003-5-5 21:04:00

只能用SelectByPolygon近似操作

AutoCAD没有提供根据样条曲线来选择实体,只能在屏幕上指定较多的点来形成一个多边形,然后选中内部的点。

zhtom 发表于 2003-5-5 22:38:00

我已经有方法了,你能不能叫我这个方法怎么做?

我在闭合区域外创建一个点,然后与图上的点A构成一个射线
射线与样条曲线有两个交点B,C
比较A与B,C的x,y坐标就可以知道他是在区域外还是在区域内了
问题是我现在不知道怎么用vba找这两个交点

efan2000 发表于 2003-5-5 23:18:00

使用IntersectWith方法

IntersectWith可以判断两个实体有没有相交,以及交点的个数和坐标。它的语法:RetVal = object.IntersectWith(IntersectObject, ExtendOption)。
其中,object是发出相交的对象,而IntersectObject是判断与它相交情况的对象,ExtendOption是相交的类型,即返回延长的相交点类型。而RetVal就是返回的交点坐标数组,为空(IsEmpty)就是不相交,一个交点的坐标占三个元素,如果上限(UBound)为2表示1个交点,以此类推。

zhtom 发表于 2003-5-6 08:12:00

多谢了,我试试看,有问题我还要麻烦老兄啊

页: [1]
查看完整版本: 如何在一个样条曲线区域内选取实体?