接到DXF文件解析任务后,就在什么都有的万能互联网上找,找得顺利还好,不顺利的话,看10多篇博文,下载十多个例子都没能找到合适自己要的。很是折腾。

以下为DXF文件格式的解析,也能说是DXF数据的提取,得到DXF的数据后,爱什么的就什么的。

数据提取,肯定要有个规范的数据格式。有找到官方文档,就基本不需要看其他的资料,看看以下的链接就好。

DXF格式官方说明:http://docs.autodesk.com/ACD/2011/CHS/filesDXF/WSfacf1429558a55de185c428100849a0ab7-5f35.htm

数据格式知道了,那就完成了?

当然可以这么做,但你得有10天,半个月的时间去深入研究。虽然说直线很简单,但直线有很多类型,比如:样条曲线,多线段等。说实话硬是肝,也能弄。但容易漏掉一些细节,导致解析不全。故不推荐肝,当然我在没有熟悉netDxf之前,确实有肝过几天,一行一行的读取,判断等等。很磨练人,,,

netDxf是个开源的DXF文件解析工具,源码链接如下:

解析工具netDxf源代码:https://github.com/haplokuon/netDxf

这个网站都是英文,好怕!!!

别怕,不管黑猫白猫抓到耗子就是好猫,怕它做肾,只要能把源码下载下来,得到DLL,其他什么都没事。

就分三步,如下:

1、Code

2、Downlod ZIP

3、等待下载完成

还有个偷懒的办法,使用NuGet,项目右键,按着下面的图片,一步一步来即可。当然的,得有外网,没外网,这个方法忽略。

由于我已经下载,也就没有点开(点击5的位置),故上图的“6”是空白,点击5后会有下载按钮,点击下载后,想着静静,等待加载完成就好,就能直接在代码里使用。

以上和标题说的有出入,不符。无关的说太多了?

但会了之后,DXF的解析确实也就,想要什么就拿什么。开始我也是不相信的,这就看吧:

准备工作就不多说:

1、加载DXF文件:(就一行代码)

DxfDocument dxfDocument = DxfDocument.Load(dxfFileFullPath);

dxfFileFullPath:为DXF文件的完整路径

2、你想要什么?圆、样条曲线、标注?

2.1、解析圆的数据:

2.1.1、打开官方文档网站,去找圆,图形对象是ENTITIES 段

2.1.2、通过netDxf工具读取圆的参数

IEnumerable<netDxf.Entities.Circle> circle = (IEnumerable<netDxf.Entities.Circle>)dxfDocument.Circles.GetEnumerator();
foreach (netDxf.Entities.Circle item in circle)
{item.Center.X.ToString();//圆心Xitem.Center.Y.ToString();//圆心Yitem.Radius.ToString();//圆半径
}

圆的所有参数,开源F12查看Circle,即可,如:

namespace netDxf.Entities
{public class Circle : EntityObject{public Circle();public Circle(Vector3 center, double radius);public Circle(Vector2 center, double radius);public Vector3 Center { get; set; }public double Radius { get; set; }public double Thickness { get; set; }public override object Clone();public List<Vector2> PolygonalVertexes(int precision);public LwPolyline ToPolyline(int precision);public override void TransformBy(Matrix3 transformation, Vector3 translation);}
}

2.2、解析样条曲线数据:不说太多,一样的方法,看 SPLINE;

2.7、获取标注:不说了,一样的方法,看 DIMENSION;

是不是DXF文件解析也没有说明的。

到了这里,是不是DXF想要什么就拿什么,对吧,没错吧,应该没错的。

CAD的DXF之C#netDxf解析相关推荐

  1. CAD的DXF解析中LWPOLYLINE多线段凸度的相关概念和弧度转换

    最近解析CAD的DXF文件时需要对合并后的多线段LWPOLYLINE组码进行解析,网上搜集了些相关资料,借鉴并摘录,同时记录下链接,以防重新搜索. 1."已知圆弧的起点.端点和凸度,计算圆心 ...

  2. 全新C#写的读取cad dxf文件,并解析显示,显示的图形可放大缩小平移

    全新C#写的读取cad dxf文件,并解析显示,显示的图形可放大缩小平移,目前可解析圆,圆弧,线段,可解析cad2000到2018等各个版本的文件,可显示解析文件的详细信息,并可修改源代码保存为不同版 ...

  3. 天大计算机辅助设计与制造考题,2017年CAD工程师认证考题答案及解析

    2017年CAD工程师认证考题答案及解析 1.显示错误报告信息,并且可以向 Autodesk 发送错误报告.此时需要将系统变量REPROTERROR设置为 A 0 B 1 C 2 D 3 答案:B 解 ...

  4. 记录一下HALCON基于可变形,利用CAD画dxf模板进行模板匹配(二)

    本文接着上一篇记录一下HALCON基于可变形,利用CAD画dxf模板进行模板匹配 打开HALCON并打开匹配助手 匹配助手如图 "创建"页说明: 1,选择匹配方式 中间偏上方的下拉 ...

  5. cad转dxf格式文件太大_如何玩转CAD看图?1分钟,一款完全免费的高效软件,解决所有看图...

    易用CAD看图软件,是一款无需注册,即开即用的CAD看图神器.提供6种基本看图模式,3种三维看图方法,6种CAD图纸编辑功能,加上3种CAD转换功能,且完全免费. 功能介绍: 该工具目前支持▼ 1.C ...

  6. 三、使用Teigha.net打开CAD(.dwg/.dxf)文件,并显示到panel界面绑定事件

    目录 一.Teigha.net直接操作CAD(.dwg/.dxf)文件 01 .直接打开CAD(.dwg/.dxf) 02 .读取实体,修改后的CAD(.dwg/.dxf)文件进行保存 03 .Tei ...

  7. 记录一下HALCON基于可变形,利用CAD画dxf模板进行模板匹配(三)

    接着上一篇记录一次HALCON利用匹配助手进行模板匹配详细过程 首先,在匹配助手窗口和采集助手窗口调整参数直到稳定匹配上之后,在实时的状态下点击生成代码 点击完生成了代码,关闭匹配助手窗口和采集助手窗 ...

  8. cad转dxf格式文件太大_CAD转DXF怎么转换?教你三种转换方法

    CAD图纸在我们日常生活中都是可见到的,因为CAD图纸文件的格式是多样的,在工作中就需要经常将CAD的格式进行转换.那CAD转DXF怎么转换呢?这个问题很多的小伙伴们都遇到过,下面小编就来教大家三种转 ...

  9. CAD转DXF,手机也能快速转换

    以CAD为基础,今天分享一种简单.快捷.方便的技能. 1.移动搜索的快速CAD转换器下载并安装到手机桌面上,用户可以根据自己的需要进行选择. 2.软件安装成功后,退出安装界面.查找快速CAD转换器应用 ...

最新文章

  1. php xdebug 中文手册,php 安装xdebug扩展
  2. php 去除实体,php – 如何在学说中正确关闭实体管理器
  3. (积累)java里的套接字
  4. map分组后取前10个_人口净流入排名前10的城市,在这10个城市买房,只涨不跌
  5. 在Outlook中修改脱机文件(.ost)的保存位置
  6. php不能加载extension的奇怪问题
  7. php上传图片类型代码,php 上传图片的代码
  8. Demosaic算法学习
  9. C# 使用Timer控件设置时间间隔
  10. linux下.a/.so/.la目标库区别-转
  11. 微软建议用户关闭Win7桌面小工具和侧边栏
  12. ERROR】Unable to open underlying table which is differently defined or of non-MyISAM type or ...
  13. virtualhackinglabs靶机 NATURAL 10.12.1.77
  14. Java stream().sorted()实现排序(升序、降序、多字段排序)
  15. 开发中PG,PL,SE,PM都是什么意思
  16. Mysql原理-索引
  17. Sublime Text 设置中文版
  18. 店盈通:拼多多如何看到关键词进店?
  19. Espressif 玩转 PWM
  20. 微型计算机闭环控制系统的工作原理,闭环控制系统的特点_闭环控制系统工作原理...

热门文章

  1. C语言:会员管理系统
  2. Qt之arm使用openssl(RSA加密)
  3. 瑞萨单片机之开发环境的搭建(一)
  4. 听师几句话 胜走好多错路
  5. iOS 文件共享 ,通过手机助手/mac 访问APP沙盒
  6. os.path.dirname与__file__的搭配运用
  7. 如何选择Web Service/WCF/Web API
  8. android TextView中ClickableSpan与文本自由复制(TextIsSelectable)冲突问题
  9. 腾讯微云免费领取一个月会员
  10. 几种常见的误差评估方法