namespace Offset
{
public static class OffsetTools
{
public static ObjectIdCollection Offest(this ObjectId id,double dis)
{
ObjectIdCollection ids = new ObjectIdCollection();
Curve cur = id.GetMetaObject(**OpenMode.ForWrite**) as Curve;
if (cur != null)
{
try
{
//获取偏移的对象集合
DBObjectCollection OffsetCurves = cur.GetOffsetCurves(dis);
//将对象集合类型转换为实体类的数组,以方便加入实体的操作
Entity[] offsetEnts = new Entity[OffsetCurves.Count];
OffsetCurves.CopyTo(offsetEnts, 0);
//将偏移的对象加入到数据库
ids = id.Database.AddToModelSpace(**offsetEnts**);
}
catch //如果偏移出现异常
{
Application.ShowAlertDialog("无法偏移!");
}
}
else //如果不是曲线
Application.ShowAlertDialog("无法偏移!");
return ids; //返回偏移后的实体ID集合
}

```
你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答
本次提问扣除的有问必答次数,将会以问答VIP体验卡(1次有问必答机会、商城购买实体图书享受95折优惠)的形式为您补发到账户。
因为有问必答VIP体验卡有效期仅有1天,您在需要使用的时候【私信】联系我,我会为您补发。