c# - AutoCAD C#/.Net : expose entities coordinates

标签 c# .net autocad autocad-plugin

我的目标是通过 AcCoreConsole 运行自定义 dll,并对 DWG 进行各种分析,例如公开对象上的图层名称和 XY 坐标。我已设法获取选择集中的所有对象,并且可以循环遍历实体。当在这个主题上进行大量搜索时,我找不到任何有关如何从实体中提取坐标的示例。我确实明白“坐标”意味着不同的东西,例如,无论是圆还是折线。

最佳答案

经过几个小时的谷歌搜索,我找到了答案。简单地使用 GeometricExtents 获取每个实体的边界框,然后通过一些简单的数学计算中点。

try
                        {
                            var entExtent = ent.GeometricExtents;
                            var midpointX = (entExtent.MaxPoint.X+entExtent.MinPoint.X)/2;
                            var midpointY = (entExtent.MaxPoint.Y+entExtent.MinPoint.Y)/2;
                        }
                        catch
                        {
                            //edt.WriteMessage("\nGeometricExtents didn´t work on this entity");                                
                        }

关于c# - AutoCAD C#/.Net : expose entities coordinates,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58467614/

相关文章:

c# - .NET 进程间 "events"

vba - VBA 是否保留过去代码更改的缓存?

c# - 如何检查 Point3d 是否不为空?

java - 整个应用程序的调用图

visual-studio-2005 - 为什么我在调试时收到 "LoaderLock was detected"警告?

c# - 在 C# 中解析复杂字符串。

c# - 如何在 C# 中声明一个对象数组

c# - 防止父/子层次结构中无限递归的防御代码

c# - 如何根据某些条件从现有集合创建新列表

.net - C# 中的编码(marshal) "char *"