linux g++編譯dxf文件C++解析庫dxflib


DXFLIB是一個用於讀取和寫入AutoCAD(R)DXF文件的開源C++庫。它提供讀取和寫入許多基本實體的功能,以及有關層和塊的信息。來自QCAD的作者。
官方定義:https://www.ribbonsoft.com/en/what-is-dxflib
最新版本下載地址:https://www.ribbonsoft.com/en/dxflib-downloads
舊版本下載:https://sourceforge.net/projects/dxflib/   https://github.com/clothbot/dxflib
使用手冊:http://www.ribbonsoft.com/dxflib/manual.pdf
中文翻譯:https://www.xuebuyuan.com/2019623.html
我們下載當前版本:3.17.0

下載解壓:

 其中,提供了qt creator項目文件,方便使用qt進行構建。src中存放源碼,examples中包含三個例子。

 

在linux發行版中,如果安裝了qt,可直接打開dxflib.pro進行構建,如果沒有,則使用g++命令行來進行構建。
使用g++編譯dxflib

1 cd ./src
2 ls -l
3 g++ -c dl_dxf.cpp -o dl_dxf.o
4 g++ -c dl_writer_ascii.cpp -o dl_writer_ascii.o
5 ar -rsc dxflib.a dl_dxf.o dl_writer_ascii.o
6 ls -l


至此,靜態庫dxflib.a編譯成功!
使用dxflib.a
readwrite例子中直接將dxflib的源碼包含進去了,可以不用鏈接dxflib.a直接編譯,當然也可以鏈接。

cd ../examples
ls 
cd ./readwrite
ls
g++ *.cpp ../../src/dxflib.a -o readwrite -I ../../src/
ls
./readwrite demo.dxf

同樣的另外兩個寫dxf文件的例子

cd ../writedimension
ls
g++ *.cpp ../../src/dxflib.a -o writedimension -I ../../src/
ls
./writedimension

在當前目錄下寫生成dimension.dxf文件,如果文件存在,則覆蓋重寫。

類似地,在當前目錄下寫生成hatch.dxf文件,如果文件存在,則覆蓋重寫。 

QCAD是一個免費的開源應用程序,基於dxflib庫,用於二維(2D)的計算機輔助制圖(CAD),可以算是AutoCAD軟件的一個替代品。

dxflib庫examples中用到的dxf文件,用QCAD軟件打開:




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM