请问如何选择与一条直线相交的其他直线
请问使用C#如何选择cad中与某一条直线相交或者刚好相接在一起(包括一条直线的端点与该直线的中间某一个地方相接,或者该直线端点与其他直线的端点相接)的其他直线,谢谢。 用选择集的拦选 sxpd 发表于 2012-7-9 19:44 static/image/common/back.gif用选择集的拦选
谢谢您的回答,能不能给个具体点的说明呢? 外地旅游ing
好像是ss.SelectF....函数
低版本没有该函数
不过拦选也有问题
有时选不着,并且必须拦选范围可见 SelectionSet pSelectSet = pDocument.Editor.SelectAll().Value;
SelectionSet pSelectSet1 = pDocument.Editor.GetSelection().Value;
using (Transaction tran = pDatabase.TransactionManager.StartTransaction())
{
Entity entity = tran.GetObject(pSelectSet1.GetObjectIds(), OpenMode.ForRead) as Entity;
BlockTableRecord pBlockTableRecord = (BlockTableRecord)tran.GetObject(pDatabase.CurrentSpaceId, OpenMode.ForWrite);
foreach (ObjectId pObjId in pSelectSet.GetObjectIds())
{
Entity pEntity = tran.GetObject(pObjId, OpenMode.ForWrite) as Entity;
Point3dCollection p3dCollection=new Point3dCollection();
entity.IntersectWith(pEntity, Intersect.OnBothOperands, p3dCollection, 0, 0);
if (p3dCollection.Count > 0)
{
pEntity.ColorIndex = 3;
}
}
tran.Commit();
}lz试下这个代码 可以选择出所有与某一块相交的实体 楼上的方法只适合线段比较少的情况,如果有大量的线条,遍历每个线条,那就太慢了!
页:
[1]