Qt使用mxDraw插件实现CAD二维图的显示和修改

更新时间:2023-01-03 10:31:19

项目开发中可能出现需要显示和加载dwg格式工程图或CAD绘图操作的功能时,需要调用CAD插件实现绘图操作或工程图展示。 这里使用了MxDraw的CAD插件,其动态库需要在其官网上下载注册使用

插件

插件的注册

下载安装包后点击安装,安装插件后进入安装路径,然后点击RegMxDrawX.bat进行注册

注册

注册完成后,系统会自动识别插件

Qt调用插件

在ui界面新增一个QAxWidget的控件,在控件右键,设置控件

添加控件

选中控件属性为MxDrawX52 Control

设置控件

设置完控件后,对控件进行布局管理

回到项目目录,在Qt的pro文件中添加插件库引用 QT += axcontainer

设置完成后,运行程序,QAxWidget控件上就显示的是CAD的绘图插件了

Qt打开dwg文件显示

使用以上设置,将dwg文件显示在QAxWidget控件上

显示文件

代码

    QFileDialog *fileDialog=new QFileDialog();
    fileDialog->setFileMode(QFileDialog::ExistingFile);
    fileDialog->setNameFilter("dwg(*.dwg)");
    QString openPath = QCoreApplication::applicationDirPath();
    fileDialog->setDirectory(openPath);
    if(fileDialog->exec()==QDialog::Accepted)
    {
        QString srcFile=fileDialog->selectedFiles()[0];
        QFileInfo fileinfo;
        fileinfo = QFileInfo(srcFile);
        qDebug()<<"srcFile"<<srcFile;
        ui->axWidget->dynamicCall("OpenDwgFile(const QString&)",srcFile);
    }

Qt mxDraw