lisp点转为vla_一种将Region转为Polyline的方法
PromptEntityResult per = ed.GetEntity("\n請選擇");if (per.Status ==PromptStatus.OK)
{using (DocumentLock dlk =doc.LockDocument())
{using (Transaction trans =db.TransactionManager.StartTransaction())
{
Entity ent=(Entity)trans.GetObject(per.ObjectId, OpenMode.ForWrite);if (!(ent isRegion))return;
Region reg=(Region)ent;
Brep brep= newBrep(reg);
BrepEdgeCollection bec=brep.Edges;if (bec != null)
{foreach (Edge edge inbec)
{
Curve3d cv3d=edge.Curve;
ExternalCurve3d ecv3d=(ExternalCurve3d)cv3d;if(ecv3d.IsCircularArc)
{
CircularArc3d ca3d= ecv3d.NativeCurve asCircularArc3d;
ed.WriteMessage("\n弧");
}else if(ecv3d.IsLine)
{
ed.WriteMessage("\n線");
}else if(ecv3d.IsLineSegment)
{
LineSegment3d ls3d= ecv3d.NativeCurve asLineSegment3d;
ed.WriteMessage("\n線段");
}else if(ecv3d.IsNativeCurve)
{
ed.WriteMessage("\n原始曲線");
}else if(ecv3d.IsNurbCurve)
{
ed.WriteMessage("\n樣條曲線");
}else{
ed.WriteMessage("\n" +ecv3d.ExternalCurveKind);
}
ed.WriteMessage("\n起點:" + cv3d.StartPoint.ToString() + "-終點:" +cv3d.EndPoint.ToString());
}
}
}
}
}
總結
以上是生活随笔為你收集整理的lisp点转为vla_一种将Region转为Polyline的方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: attention retain_Att
- 下一篇: 军用外骨骼机甲多少钱一套?