|
发表于 2010-12-14 15:39:00
|
显示全部楼层
public void test()
{
Editor ed=Application.DocumentManager.MdiActiveDocument.Editor;
PromptEntityOptions peo = new PromptEntityOptions("\n选择多段线");
PromptEntityResult per = ed.GetEntity(peo);
if (per.Status != PromptStatus.OK)
return;
ObjectId plid = per.ObjectId;
using (Transaction tr = HostApplicationServices.WorkingDatabase.TransactionManager.StartTransaction())
{
Polyline pl = tr.GetObject(plid, OpenMode.ForRead) as Polyline;
while (true)
{
PromptPointOptions ppo = new PromptPointOptions("\n选择多段线上的点");
ppo.AllowNone = true;
PromptPointResult ppr = ed.GetPoint(ppo);
if (ppr.Status != PromptStatus.OK)
return;
Point3d pt = ppr.Value;
int i =(int)pl.GetParameterAtPoint(pt);
ed.WriteMessage("\n选择点介于{0}和{1}顶点之间",Convert.ToString(i+1),Convert.ToString(i+2));
}
}
} |
|