基于C#實(shí)現(xiàn)DXF文件讀取顯示
工控領(lǐng)域的制圖軟件仍然以AutoCAD為主,很多時(shí)候我們希望上位機(jī)軟件可以讀取CAD的圖紙文件,從而控制設(shè)備按照繪制的路線進(jìn)行運(yùn)行,今天給大家分享的是如何使用C#讀取DXF文件并進(jìn)行顯示。公眾號(hào):【dotNet工控上位機(jī):thinger_swj】
1. 準(zhǔn)備工作
如果想通過C#讀取DXF文件,首先需要使用AutoCAD生成一些DXF文件,接著使用VS2019創(chuàng)建一個(gè)Windows窗體應(yīng)用。
2. 安裝netDXF包
1、打開VS的工具 >> NuGet包管理器 >> 管理解決方案的NuGet程序包;

2、在瀏覽選項(xiàng)卡中,搜索框中輸入“netDXF”,得到結(jié)果如下圖所示:

3、選擇安裝的項(xiàng)目,并單擊安裝,注意netDXF安裝包的.net framework版本。

3. 讀取DXF文件
(1)新建一個(gè)DxfDocument對(duì)象,在打開文件的按鈕事件中,調(diào)用Load方法讀取選擇路徑下的dxf文件:

(2)加載完成后將文件中的Line、Arc、Circle信息顯示在DataGridView中:

(3)顯示結(jié)果:

4. 顯示圖形
(1) 界面上添加一個(gè)PictureBox控件,先繪制一下表格:

(2) 繪制結(jié)果如下圖所示:

(3) 基于GDI+繪制Line:

(4) 基于GDI+繪制Arc:

(5) 基于GDI+繪制Circle:

(6) 顯示結(jié)果:

5. 平移、放大、縮小
完成圖形顯示后,增加鼠標(biāo)平移、放大及縮小功能,添加以下四個(gè)鼠標(biāo)事件:

(1)鼠標(biāo)MouseDown事件:

(2)鼠標(biāo)MouseUp事件:

(3)鼠標(biāo)MouseMove事件:

(4)鼠標(biāo)MouseWheel事件:

