DWG格式解析库 您所在的位置:网站首页 starcam软件怎么读取dwg文件 DWG格式解析库

DWG格式解析库

2024-06-04 09:27| 来源: 网络整理| 查看: 265

libredwg 是什么

        LibreDWG 是 github 上一个开源的 C 库,用于读写 DWG 文件。这个程序是 GNU 项目的一部分,在 GNU 的支持下发布。它是国外大牛开发的,是目前我觉得对 DWG 支持最好的一个库(2000版本以后的DWG文件都支持,且稳定),现在还在持续更新与维护。 libreDWG的地址

目的

        在WIN10下 借助 QT 快速使用 libreDWG 库的 exe 实现对 DWG 文件的操作,包括 dwg2dxf、dwg2svg、dwg2bmp、dwgread、dwgwrite、dxf2dwg 等功能 。

step1:准备

① 下载 libreDWG 的可执行文件: libredwg-0.12.4.4364-win64.zip (可以选最新版本下载) 下载解压出来长这样:(绿框中的4个DLL是依赖库)在这里插入图片描述 ② 安装 QT 软件: QT5.14 (只要是QT5就行)

step2:命令行运行exe

1.打开CMD并切换到刚下载的 libredwg-0.12.4.4364-win64 文件夹下

命令:cd /d E:\Mao\temp\dwg支持\libredwg-0.12.4.4338-win64(你的路径)

在这里插入图片描述 2. 输入exe文件名(以 dwg2dxf.exe 为例) ① 如下图,输出接口参数输入格式1 ② 用 -help 可以查看具体参数含义在这里插入图片描述 3. DWG 转 DXF 文件

dwg2dxf.exe 1.dwg

使用最简单的方式转换:只输入要转换的DWG文件名,默认原地转换。 注意:1.dwg 与 dwg2dxf.exe 在同一路径下在这里插入图片描述 转完发现文件夹下多了1.dxf文件,转换成功。在这里插入图片描述

step3 :用QT完成转换

1.先上效果图请添加图片描述 2.程序 Mainwindow.h

#ifndef MAINWINDOW_H #define MAINWINDOW_H #include QT_BEGIN_NAMESPACE namespace Ui { class MainWindow; } QT_END_NAMESPACE class MainWindow : public QMainWindow { Q_OBJECT public: MainWindow(QWidget *parent = nullptr); ~MainWindow(); public slots: void BtnOpen(); //打开按钮 void BtnConvert(); //转换按钮 void BtnClear(); //清空按钮 private: Ui::MainWindow *ui; QString fileName; //输入的DWG文件路径 }; #endif // MAINWINDOW_H

Mainwindow.cpp

#include "mainwindow.h" #include "ui_mainwindow.h" #include #include #include MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) , ui(new Ui::MainWindow) { ui->setupUi(this); connect(ui->btnOpen,&QPushButton::clicked,this,&MainWindow::BtnOpen); connect(ui->btnConvert,&QPushButton::clicked,this,&MainWindow::BtnConvert); connect(ui->btnClear,&QPushButton::clicked,this,&MainWindow::BtnClear); } MainWindow::~MainWindow() { delete ui; } //打开按钮 void MainWindow::BtnOpen() { fileName = QFileDialog::getOpenFileName(this, tr("open file"), "./", tr("*.dwg *.DWG")); ui->Edit->insertPlainText("Open File Success:\r"+ fileName + "\r\r"); } //转换按钮 void MainWindow::BtnConvert() { //调用 cmd 运行 exe 程序 QProcess process(this); //转换后的DXF保存路径 QString DxfSavePath = "E:/Mao/dwg2dxf/1.dxf"; //使用的 exe 文件的路径 QString Dwg2dxfExePath = "E:/Mao/algorithm/Qt/test/libredwg-0.12.4.4338-win64/dwg2dxf.exe"; //输出的DXF是2018版本的 process.start("cmd",QStringList()


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有