当前位置:   article > 正文

【三维可视化Qt+OPEN CASCADE-001】傻瓜式配置——可在Qt creator下运行github例程_qt配置opencascade

qt配置opencascade

前言

因为一个大项目需要,在QT界面利用occ做三维可视化的东西,所以需要配置。网上的配置攻略不是在VS下用MFC做,就是用VS+QT的插件,也有老哥用Qt Creator做,主要是下面两个:
occQt
出自occ方面的大神,eryar
多说一句,虽然是大佬,但是和蔼可亲,之前配置有问题,发邮件给大佬,大佬没多久就回复了,给大佬点赞。
Windows系统下QT+OpenCasCAD仿真开发
还有个这个老哥,目测研究的内容和我们教研室方向还挺像,有缘有缘,也是大佬。
但是,问题来了,按照上面两个老哥的攻略,我还是运行不了,让我十分苦恼。好在后来自己摸索出来了,主要问题是环境配置!!!环境配置!!!环境配置!!!

一、开发环境

1、Windows 10 64位;
2、Qt 5.14.1 MSVC2017 64bit(扛不住,归根到底大恒相机C++接口不支持MINGW,我只能投入MSVC怀抱了,不过目测OCC也不支持?)
3、OPEN CASCADE 7.4(不多说,直接上最新版)

二、安装与环境配置

1、安装Visual Studio 2017
2、安装Qt 5.14.1与自带的Qt Creator 4.11.1
3、重头戏来了,官网下载DOWNLOAD OPEN CASCADE TECHNOLOGY 7.4.0
在这里插入图片描述
注意:直接安装版即可,官网在配置说明里面也说了,安装版直接支持vs2017,虽然是vc14,但实际上是vc141,也就是vc++ 2017,然后里面的第三方库啥的也自带,也不用编译啥的。
下载好了直接安装即可。
我安装在:

E:\OpenCASCADE-7.4.0-vc14-64
  • 1

4、配置环境变量
环境变量十分关键,环境变量配置不好,程序编译成功,但是一运行就crash,让我十分苦恼。环境变量就是在path里面加目录:
在这里插入图片描述
比较多,该加的都加了,估计也有不该加的,参考我的安装路径,配置如下:

E:\OpenCASCADE-7.4.0-vc14-64\ffmpeg-3.3.4-64\bin
E:\OpenCASCADE-7.4.0-vc14-64\freeimage-3.17.0-vc14-64\bin
E:\OpenCASCADE-7.4.0-vc14-64\freetype-2.5.5-vc14-64\bin
E:\OpenCASCADE-7.4.0-vc14-64\opencascade-7.4.0\win64\vc14\bin
E:\OpenCASCADE-7.4.0-vc14-64\qt5.11.2-vc14-64\bin
E:\OpenCASCADE-7.4.0-vc14-64\rapidjson-1.1.0\bin
E:\OpenCASCADE-7.4.0-vc14-64\tbb_2017.0.100\bin\intel64\vc14
E:\OpenCASCADE-7.4.0-vc14-64\tbb_2017.0.100\bin\intel64\vc14_ui
E:\OpenCASCADE-7.4.0-vc14-64\tcltk-86-64\bin
E:\OpenCASCADE-7.4.0-vc14-64\vtk-6.1.0-vc14-64\bin
E:\OpenCASCADE-7.4.0-vc14-64\opencascade-7.4.0\win64\vc14\lib
E:\OpenCASCADE-7.4.0-vc14-64\opencascade-7.4.0\inc
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

5、去github下载eryar大佬的例程,网址就是上面提到的网址。大佬的例程下载下来,按照大佬的readme文件,把pro文件里面的CASROOT改成自己的安装路径后运行还是不行,会提示找不到头文件:
在这里插入图片描述
等于还是路径问题,然后我发现,大佬引用CASROOT的时候,加了括号:

    INCLUDEPATH +=  \
        $$(CASROOT)/inc
  • 1
  • 2

把括号去掉,就ok了,然后把pro文件里面所有CASROOT前后的括号全部去掉,搞定!
修改后的pro文件如下:

#-------------------------------------------------
#
# Project created by QtCreator 2013-08-18T15:52:09
#
#-------------------------------------------------

QT       += core gui opengl

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = occQt
TEMPLATE = app

SOURCES += main.cpp \
    occQt.cpp       \
    occView.cpp

CONFIG += c++11

HEADERS  += \
    occQt.h \
    occView.h

FORMS    += \
    occQt.ui

RESOURCES += \
    occqt.qrc

CASROOT = E:\OpenCASCADE-7.4.0-vc14-64\opencascade-7.4.0\

win32 {
    DEFINES +=  \
        WNT
    INCLUDEPATH +=  \
        $$CASROOT/inc

    win32-msvc2010 {
        compiler=vc10
    }

    win32-msvc2012 {
        compiler=vc11
    }

    win32-msvc2013 {
        compiler=vc12
    }

    win32-msvc2015 {
        compiler=vc14
    }

    win32-msvc {
        compiler=vc14
    }


    # Determine 32 / 64 bit and debug / release build
    !contains(QMAKE_TARGET.arch, x86_64) {
        CONFIG(debug, debug|release) {
            message("Debug 32 build")
            LIBS += -L$$CASROOT/win32/$$compiler/lib
        }
        else {
            message("Release 32 build")
            LIBS += -L$$CASROOT/win32/$$compiler/lib
        }
    }
    else {
        CONFIG(debug, debug|release) {
           message("Debug 64 build")
           LIBS += -L$$CASROOT/win64/$$compiler/lib
           #message("$$CASROOT/win64/$$compiler/lib")
        }
        else {
            message("Release 64 build")
            LIBS += -L$$CASROOT/win64/$$compiler/lib
        }
    }
}

linux-g++ {
    INCLUDEPATH +=  \
        /usr/local/include/opencascade

    LIBS += \
        -L/usr/local/lib/
}

LIBS +=         \
    -lTKernel   \
    -lTKMath    \
    -lTKG3d     \
    -lTKBRep    \
    -lTKGeomBase\
    -lTKGeomAlgo\
    -lTKTopAlgo \
    -lTKPrim    \
    -lTKBO      \
    -lTKBool    \
    -lTKOffset  \
    -lTKService \
    -lTKV3d     \
    -lTKOpenGl  \
    -lTKFillet
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106

三、运行

终于成功了,泪奔!
在这里插入图片描述
虽然整个从下载OCC到配置的过程只有一两天,但是不停报错、崩溃真的好痛苦啊,再次感谢在网上发布教程的各位大佬,包括但不限于:
OPEN CASCADE
Windows系统下qt开发融合pylon,opencv,opencascade 等库的工程
Opencascade的安装
Windows系统下QT+OpenCasCAD仿真开发
Qt程序异常结束
Opencascad 7.0编译问题
eryar/occQt
最后即兴赋诗一首:
天若有情天亦老,人间正道是沧桑。
欢迎有相关配置问题的老哥评论,我们一同讨论。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Monodyee/article/detail/619025
推荐阅读
相关标签
  

闽ICP备14008679号