|
我创建了一些简单的代码来围绕多段线扫描一个圆。不幸的是,在线框模式下,扫描实体的外观与使用“扫描”命令手动创建的实体不同,如下图所示
在这张图片中,我在左边有手动扫描,在右边有由代码创建的扫描。
这是生成上述实线的代码。我今天想不清楚。你认为需要做些什么才能使其在线框中看起来正确?
私有子输入按钮1_Click(发送者作为对象,例如事件参数)处理输入按钮1。Click
使用Active.Document.LockDocument()
使用transaction=Active.Database.TransactionManager.StartTransaction()
Dim modelSpace=Active.Database.modelSpace(OpenMode.ForWrite)
Dim polylineSegmentCollection=新的polylineSegmentCollection()
使用lineSegment1=新的linesegmenti2d(新的点2d(-4,4),新的点2d(-4,0))
Dim lineSegment=新的多段线线段(lineSegment1)
<div>polylineSegmentCollection.添加(线段)</div>
结束使用
Dim arcSegment=新的多段线线段(新的点2d(-4,0),新的点二维(4,0,1,0)
<div>polylineSegmentCollection.Add(arcSegment)</div>
使用lineSegment2=新的linesegment 2D(新的点2D(4,0),新的点2d(4,4))
尺寸线段=新的多段线线段(线段2)
<div>polylineSegmentCollection.添加(线段)</div>
结束使用
使用中心线=polylineSegmentCollection.ToPolyline()
modelSpace.AppendEntity(中心线)
事务。AddNewlyCreatedDBObject(中心线,真)
Dim solid=New Solid3d()
使用圆=新圆(Point3d.Origin,Vector3d.ZAxis,.5)
Dim sweepOptionsBuilder=New sweepOptionsBuilder()
扫掠选项生成器。Align=SweepOptionsAlignOption.AlignSweepEntityToPath
扫掠选项生成器。基点=点3d.原点
扫掠选项生成器。Bank=True
固体。CreateSWeeptSolid(圆、中心线、扫掠选项生成器.ToSweepOptions())
结束使用
modelSpace.AppendEntity(实体)
事务。AddNewlyCreatedDBObject(实心,真)
事务.提交()
结束使用
结束使用
结束使用
末端接头
我正在使用Gile的几何体扩展来创建多段线,并且没有显示这些方法的代码。如果你需要它们,一个简单的谷歌搜索将找到正确的线程。
本帖以下内容被隐藏保护;需要你回复后,才能看到! 游客,如果您要查看本帖隐藏内容请 回复 |
|