屏幕上拾取点的坐标
嗨,你能告诉我如何获得屏幕上选择的点的坐标吗?我想在屏幕上写下X和Y坐标,我将选择。你有任何c#代码吗?我是C#的新手,所以我还在学习。谢谢大家
**** Hidden Message ***** 您好,这是一个简单且带注释的示例:[命令方法("PRINTCOORDS")]。
公共静态无效Print坐标()。
{。
文档文档=Application.DocumentManager.MdiActiveDocument;。
数据库db=doc.Database;。
编辑doc.Editor。
。
//提示用户选择一个点。
提示点结果ppr=ed.GetPoint("\nPick a point: ");。
。
//如果用户取消则返回。
如果(ppr.Status!=PromptStatus.OK)。
返回;。
。
Point3d PickedPoint=ppr.Value;。
。
//启动事务以将文本添加到当前空间。
使用(事务tr=db.TransactionManager.StartTransaction())。
{。
//打开当前空间BlockTableRecord进行写入。
块表记录curSpace=。
tr.GetObject(db.CurrentSpaceId,OpenMode.ForWrite);。
。
//创建一个新的DBText实例并设置其属性。
DBText=new DBText()。
{。
位置=拾取点,。
TextString=$"{拾取点. X: 0.00},{拾取点. Y: 0.00}"。
};。
。
//将文本转换为UCS。
text.TransformBy(ed.CurrentUserCoordinateSystem);。
。
//将文本附加到当前空间。
curSpace.AppendEntity(文本);。
。
//将文本添加到交易。
tr.AddNewlyCreatedDBObject(文本,真);。
。
//提交更改。
tr.Commit();。
}。
}。
谢谢。这是有用的
页:
[1]