C#CAD二次开发图案填充对象边界提取
来源:互联网 发布:淘宝客服售前做什么 编辑:程序博客网 时间:2024/04/30 13:38
/// 填充边界提取转化方法 /// </summary> /// <param name="hat">需要转化的Hatch对象</param> /// <param name="trans">声明的事务对象</param> /// <param name="btr">数据库中的模型空间</param> /// <param name="numSample">提取单位曲线中样本点的数目</param> public static void DrawBorder(Hatch hat, Transaction trans, BlockTableRecord btr, int numSample) { //取得边界数 int loopNum = hat.NumberOfLoops; Point2dCollection col_point2d = new Point2dCollection(); BulgeVertexCollection col_ver = new BulgeVertexCollection(); Curve2dCollection col_cur2d = new Curve2dCollection(); for (int i = 0; i < loopNum; i++) { col_point2d.Clear(); HatchLoop hatLoop = null; try { hatLoop = hat.GetLoopAt(i); } catch (System.Exception) { continue; } //如果HatchLoop为PolyLine if (hatLoop.IsPolyline) { col_ver = hatLoop.Polyline; foreach (BulgeVertex vertex in col_ver) { col_point2d.Add(vertex.Vertex); } } //如果HatchLoop为Curves else { col_cur2d = hatLoop.Curves; foreach (Curve2d item in col_cur2d) { Point2d[] M_point2d = item.GetSamplePoints(numSample); foreach (Point2d point in M_point2d) { if (!col_point2d.Contains(point)) col_point2d.Add(point); } } } //根据获得的Point2d点集创建闭合Polyline Polyline pl = new Polyline(); pl.Closed = true; pl.Color = hat.Color; PolylineTools.CreatePolyline(pl, col_point2d); btr.AppendEntity(pl); trans.AddNewlyCreatedDBObject(pl, true); } }
0 0
- C#CAD二次开发图案填充对象边界提取
- CAD二次开发(C#)之Application 对象
- CAD二次开发(C#)之Document 对象
- AutoCAD 二次开发:获取填充边界
- 删除cad中所有图案填充方法
- vb.net cad 重新生成填充边界
- C#CAD二次开发读取CAD表格数据
- CAD二次开发(C#)第一个例子
- CAD二次开发(C#)第二个例子
- CAD二次开发
- CAD二次开发之“添加对象到模型空间”
- auto CAD 二次开发 c#.net 之JIG画多段线(polyline)
- CAD二次开发(C#)之添加文字样式
- matlab 柱状图 填充图案
- (11)图案填充
- CAD二次开发相关
- .NET cad 二次开发入门
- CAD .net二次开发 过滤器
- 帧速度的控制
- flash外部引入视频
- bzoj1635 最高的牛
- Yii的增删改查-分页
- D类功放设计
- C#CAD二次开发图案填充对象边界提取
- laraver的增删改查-分页
- 计算缓存大小并且清空缓存
- linux关于bashrc与profile的区别(转)
- JS实用ToolKit--NO1.数组排序
- http协议
- Ambari file view无权限问题
- 在windows 、linux下读取目录下所有文件名
- Linux下SHELL的PS1变量简介