首页 > 其他分享 >AutoCAD .NET 二次开发(2020版)找到折线上剩余的顶点

AutoCAD .NET 二次开发(2020版)找到折线上剩余的顶点

时间:2023-11-30 17:26:27浏览次数:35  
标签:AutoCAD line2 SegmentType 2020 折线 顶点 二次开发 polyline

如果一条折线有两个顶点,已对其中一个顶点应用了圆角,则还剩下一个顶点。

 

如何通过代码找到这些剩余的顶点(可能不止一个)?

可通过遍历所有顶点,判断每个点连接的两边的线是否为直线

如果都为直线,则为顶点,不是圆角。

代码如下:

for (int i = 1; i < polyline.NumberOfVertices - 1; i++)
{
    SegmentType line1 = polyline.GetSegmentType(i - 1);
    SegmentType line2 = polyline.GetSegmentType(i);
    if (line1 == SegmentType.Line && line2 == SegmentType.Line)
    {
        Point3d p = polyline.GetPoint3dAt(i);
        ed.WriteMessage("\nThe {0} is a need point", i);
    }
}

  

标签:AutoCAD,line2,SegmentType,2020,折线,顶点,二次开发,polyline
From: https://www.cnblogs.com/TheRedHouse/p/17867821.html

相关文章

  • AutoCAD .NET 二次开发(2020版)选择特定对象另存为新文件
    如果需要从当前模型空间中选择部分图形,直接另存为一个新文件,可用如下方法//spObjectId对象的ID//path保存路径//注意,实际内部使用了ObjectIdCollection对象,一次可以保存多个IDpublicstaticvoidSaveObject(ObjectIdspObjectId,stringpath){varsourceDb=spOb......
  • AutoCAD .NET 二次开发(2020版)在模态窗口中控制窗口的隐藏和显示
    如果你创建了模态窗口,虽然一些API,例如Editor.GetSelection(),可以自动隐藏模式对话框,但如果从模态窗口出发与编辑器(编辑器指的模型空间,即你绘图的窗口)交互,它会在GetSelection()完成后立即显示对话框,而你的其它代码可能仍在进行中,两者处于异步模式。由于模式对话框很可能在其它代......
  • LIMS实验室信息管理系统源码,支持二次开发
    LIMS实验室信息管理系统源码,支持二次开发LIMS实验室信息管理系统是一种软件类型,旨在通过跟踪与样品、实验、实验室工作流程和仪器相关的数据,提高实验室产能和效率。覆盖实验室从合同审批、委托下单、样品管理、生产调度、检测记录、报告管理、财务开票结算等全业务的过程管理。1、......
  • go开发之基于个微机器人的二次开发
    请求URL:http://域名地址/sendText请求方式:POST请求头Headers:Content-Type:application/jsonAuthorization:login接口返回参数:参数名必选类型说明wId是string登录实例标识wcId是string接收方群idcontent是string文本内容消息(@的微信昵称需要自己拼接)at是string艾特的微信id(多个以逗号......
  • python开发之个微机器人的二次开发
    请求URL:http://域名地址/sendText请求方式:POST请求头Headers:Content-Type:application/jsonAuthorization:login接口返回参数:参数名必选类型说明wId是string登录实例标识wcId是string接收方群idcontent是string文本内容消息(@的微信昵称需要自己......
  • 将Autodesk的AutoCAD嵌入WEB网页中在线查看、编辑、审阅DWG文档
    大家都知道猿大师办公助手支持把微软OFFICE和金山WPS可以完美嵌入到浏览器中,并实现在线编辑文档、表格和PPT等功能,但是还有很多人不知道:猿大师还可以把Autodesk的AutoCAD、DWGTrueView、DesignReview等软件嵌入到浏览器网页中,实现dwg、dxf等工程图在线查看、编辑、审阅等。下面......
  • UG\NX二次开发 获取部件的4x4矩阵
    文章作者:里海方法1:输入部件occ,获取矩阵。用函数UF_ASSEM_ask_transform_of_occ(),比较直接。方法2:输入部件的实例或事例,获取矩阵。用函数UF_ASSEM_ask_component_data()。通过部件事例获取实例的方法函数:......
  • UG\NX二次开发 获取通过部件事例中的对象事例获取部件的事例
    文章作者:里海方法1:UF_ASSEM_ask_part_occurrence(tagBody,&tagPartOcc);方法2:UF_ASSEM_ask_parent_component(tagBody,&tagPartOcc);......
  • NX二次开发 用数学函数获得两点的距离
    简介:    NX二次开发用数学函数获得两点的距离。代码://获得平面上2点距离doublegetPointToPointDis(doublep1[2],doublep2[2]){returnsqrt((p1[0]-p2[0])*(p1[0]-p2[0])+(p1[1]-p2[1])*(p1[1]-p2[1]));}    me.hpp内容:文章作者:里海......
  • NX二次开发 创建基准平面UF_MODL_create_fixed_dplane
    简介:    NX二次开发创建基准平面UF_MODL_create_fixed_dplane代码:doubledouOriginPoint[3]={0,0,5};doubledouPlaneNormal[3]={0,0,1};tag_ttagPlane=NULL_TAG;UF_MODL_create_fixed_dplane(douOriginPoint,douPlaneNormal,&tagPlane);    m......