- 积分
- 975
- 明经币
- 个
- 注册时间
- 2011-8-22
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|
请教各位一个问题:我想通过窗体的button键添加一个多段线,逐个顶点进行添加,我希望每添加一个顶点就在modelspace能看到多段线的变化,我该怎么做? 一下是我的代码 但是总是显示eLockViotation.谁可以帮我看看,谢谢! 我的窗口是模态窗口
private void btn_Click(object sender, EventArgs e)
{
Polyline polyline = new Polyline();
using (Transaction trans = db.TransactionManager.StartTransaction())
{
ObjectId entId;//用于返回添加到模型空间中的实体ObjectId
//以读方式打开块表
BlockTable bt = (BlockTable)trans.GetObject(db.BlockTableId, OpenMode.ForRead);
//以写方式打开模型空间块表记录.
BlockTableRecord btr = (BlockTableRecord)trans.GetObject(bt[BlockTableRecord.ModelSpace], OpenMode.ForWrite);
entId = btr.AppendEntity(polyline);//将多段线对象的信息添加到块表记录中
trans.AddNewlyCreatedDBObject(polyline, true);//把对象添加到事务处理中
trans.Commit();//提交事务处理
}
//循环给多段线添加顶点 ,每添加一个就更新一下变化
for (int i = 0; i < 10; i++)
{
polyline.AddVertexAt(i, new Point2d(11 * i, 10 + i), 0, 0, 0);
Autodesk.AutoCAD.ApplicationServices.Application.UpdateScreen();
}
}
|
|