CAD C# 根据点获其所在取闭合区域面积

简介: 前期在研究CAD的时候,想弄一个点击一个闭合区域内一点就获取这个区域的方法,后来尝试了使用boundary命令,可以实现。 现在把C#代码贴上来,希望对大家有用。 其中一个重要的环节就是调用CAD命令,这个借用了论坛里面一个高手的代码,不好意思忘了高手名字了。
前期在研究CAD的时候,想弄一个点击一个闭合区域内一点就获取这个区域的方法,后来尝试了使用boundary命令,可以实现。
现在把C#代码贴上来,希望对大家有用。
其中一个重要的环节就是调用CAD命令,这个借用了论坛里面一个高手的代码,不好意思忘了高手名字了。反正能够跳过boundary的回车控制。

效果如下:

 

代码如下:


[CommandMethod( " boundaryCAD ")]
         public  void BoundaryCAD()
        {
            PromptPointOptions pPointOptions =  new PromptPointOptions( " \n 选择一个点 ");
            PromptPointResult pPointResult = pDocument.Editor.GetPoint(pPointOptions);
             if (pPointResult.Status == PromptStatus.OK)
            {
                Point3d point3d = pPointResult.Value;

                InvokeArx.Command( true" _Boundary ", point3d,  " \0 ");

                PromptSelectionResult pResult=  pDocument.Editor.SelectLast();
                SelectionSet pSelectionSet = pResult.Value;
                 using (Transaction tran = pDatabase.TransactionManager.StartTransaction())
                {
                     foreach (ObjectId pObjectId  in pSelectionSet.GetObjectIds())
                    {
                        Entity pEntity = tran.GetObject(pObjectId,OpenMode.ForWrite)  as Entity;
                         if ((pEntity  as Polyline) !=  null)
                        {
                            Polyline pPolyline = pEntity  as Polyline;
                            pDocument.Editor.WriteMessage( " \n当前区域面积是: " + pPolyline.Area.ToString());
                        }
                      pEntity.Erase( true);
                    }
                    tran.Commit();
                }
            }
        }


其中有个类的代码在附件里: /Files/tracyjfly/InvokeArx.rar
相关文章
|
5月前
|
定位技术 数据处理
适用于UE的wgs84坐标系快捷拾取方法
UE开发中,为了精确的地理定位,常用到WGS84坐标系。而常规地图软件的拾取坐标不适用于UE,因此掌握WGS84坐标转换至关重要。与大家分享一个两步快速拾取WGS84坐标的方法~
|
定位技术 开发工具 数据安全/隐私保护
GIS数据格式坐标转换(地球坐标WGS84、GCJ-02、火星坐标、百度坐标BD-09、国家大地坐标系CGCS2000)
GIS数据格式坐标转换(地球坐标WGS84、GCJ-02、火星坐标、百度坐标BD-09、国家大地坐标系CGCS2000)
2480 1
试题:最大的矩形(给定直方图里面积最大的矩形)
试题:最大的矩形(给定直方图里面积最大的矩形)
|
7月前
|
算法
矩形总面积计算器:计算两个矩形的总面积,包括重叠区域
矩形总面积计算器:计算两个矩形的总面积,包括重叠区域
175 1
|
7月前
|
定位技术
ArcGIS面要素最小外接矩形、外接圆的绘制方法
ArcGIS面要素最小外接矩形、外接圆的绘制方法
126 1
|
7月前
|
定位技术
基于ENVI实现栅格遥感影像按图层行列号与像元数量划定矩形研究区域并裁剪
基于ENVI实现栅格遥感影像按图层行列号与像元数量划定矩形研究区域并裁剪
C#编程练习(02):大地坐标系(LBH)向空间直角坐标系(XYZ)的转换及其逆转换
C#编程练习(02):大地坐标系(LBH)向空间直角坐标系(XYZ)的转换及其逆转换
C#编程练习(02):大地坐标系(LBH)向空间直角坐标系(XYZ)的转换及其逆转换
C++ 计算一个区域的内切圆, 区域内的一个点
C++ 计算一个区域的内切圆, 区域内的一个点
90 0
|
算法 计算机视觉 数据格式
用 Python 对图片主体轮廓进行提取、颜色标记、并计算区域面积
Python + Opencv2 实现轮廓提取,轮廓区域面积计算; 对图像处理时,会遇到这样一个场景:找到图像主体轮廓,这是其一,可能为了凸显轮廓,需要用指定的颜色进行标记;轮廓标记完可能任务还没有结束,还需对轮廓所勾勒的像素面积区域统计计算。
用 Python 对图片主体轮廓进行提取、颜色标记、并计算区域面积

热门文章

最新文章