欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

AutoCAD .Net 将拾取点坐标由UCS转换到WCS

程序员文章站 2024-03-18 12:48:16
...

与 AutoCAD 进行交互操作时,输入与输出的点坐标都是基于UCS(用户坐标系)的。
那怎样将 UCS 坐标系下的点转换到 WCS 坐标系下呢?
请看如下代码:

Document doc = Application.DocumentManager.MdiActiveDocument;
Database db = doc.Database;

// 拾取的点坐标为 UCS 下的坐标
PromptPointResult ret = doc.Editor.GetPoint("\nSpecify point: ");
if (ret.Status != PromptStatus.OK)
{
    return;
}

Point3d pointInUCS = ret.Value;
Point3d pointInWCS = pointInUCS.TransformBy(doc.Editor.CurrentUserCoordinateSystem);

Document.Editor.CurrentUserCoordinateSystem 存储的是当前 UCS 的坐标转换矩阵。

参考文章
AutoCAD .NET: Transform Picked Point from Current UCS to WCS

相关标签: AutoCAD