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);
          //}
      }
     

   

  }
相关推荐
weixin_4978455429 分钟前
.NET 公共语言运行时(Common Language Runtime,CLR)
c#
吾与谁归in1 小时前
【C#设计模式(5)——原型模式(Prototype Pattern)】
设计模式·c#·原型模式
花心蝴蝶.2 小时前
并发编程中常见的锁策略
java·jvm·windows
zmd-zk2 小时前
hive中windows子句的使用
大数据·数据仓库·hive·hadoop·windows·分布式·big data
不脱发的牧码人5 小时前
C#中Task和Thread的全解析
c#·多线程·thread·task
霖雨9 小时前
使用Visual Studio Code 快速新建Net项目
java·ide·windows·vscode·编辑器
唐宋元明清218810 小时前
Surface pro 11二合一平板参数调研
windows·外设
ZIM学编程10 小时前
Java基础Day-Sixteen
java·开发语言·windows
IT规划师10 小时前
开源 - Ideal库 - 常用枚举扩展方法(一)
开源·c#·.net core·ideal库·枚举转换
Ling-X515 小时前
红日靶机(七)笔记
linux·windows·内网渗透·靶机笔记·vulnstack