032集——圆转多段线(Circle to Polyline)(CAD—C#二次开发入门)

CAD中圆可转为带有凸度的多段线以方便后期数据计算、处理,效果如下:

白色为圆,红色为转换后的多段线(为区分,已手工偏移多段线)

cs 复制代码
  public static  void XX()
  {
      var curves = Z.db.SelectEntities<Entity>();
      foreach (var item in curves)
      {
          if (item is Circle)
          {
              Circle temp = (Circle)item;
              Point3d pt = temp.Center;
              double leftx = pt.X - temp.Radius;
              double rightx = pt.X + temp.Radius;
              double topx = pt.X;
              double bottomx = pt.X;
              double lefty = pt.Y;
              double righty = pt.Y;
              double topy = pt.Y + temp.Radius;
              double bottomy = pt.Y - temp.Radius;
              Point2d left = new Point2d(leftx, lefty);
              Point2d right = new Point2d(rightx, righty);
              Point2d top = new Point2d(topx, topy);
              Point2d bottom = new Point2d(bottomx, bottomy);
              Polyline pl = new Polyline();
              pl.AddVertexAt(0, bottom, 1, 0, 0);
              pl.AddVertexAt(1, top, 1, 0, 0);
              pl.AddVertexAt(2, bottom, 0, 0, 0);
              pl.ColorIndex = 1;
              Z.db.AddEntityToModeSpace(pl);
              pl.Highlight();
              // Debugger.Break();
          }
          //else
          //{
          //    Z.db.Erase(item);
          //}
      }
     

   

  }
相关推荐
厦门德仔5 分钟前
【C#】C#字符串拼接的6种方式及其性能分析对比
服务器·windows·c#
画个逗号给明天"17 分钟前
C#从入门到精通(5)
开发语言·笔记·c#
鲤籽鲲4 小时前
C# System.Net.IPEndPoint 使用详解
网络·microsoft·c#·.net
快乐点吧5 小时前
【Word】批注一键导出:VBA 宏
开发语言·c#·word
Dm_dotnet5 小时前
为Avalonia应用添加图标
c#
Rabbb5 小时前
C# 切割数组的Linq扩展方法 Period,PeriodBy
后端·c#
网络探索者6 小时前
DirectX修复工具(DirectX Repair)官网免费下载
windows
阿ฅ( ̳• ε • ̳)ฅ6 小时前
C#窗体应用程序连接数据库
开发语言·数据库·c#
心灵宝贝7 小时前
SQLyog一款被遗忘的MySQL管理利器深度解析
windows
勘察加熊人11 小时前
wpf+c#路径迷宫鼠标绘制
开发语言·c#·wpf