mayo介绍和QTqmake编译基于Opencascade开发的mayo工程-小白配置

目录:

  • 一、mayo介绍
    • :zap: 最新功能(截止7.8.2)
    • 在这里插入图片描述
  • 二、编译准备
  • 三、编译过程
    • 3.1`QT Creator`打开源码的pro工程
    • 3.2修改几处pro配置
    • 3.3复制所需的动态链接库
    • 3.4编译完成

一、mayo介绍

1️⃣mayo是一个基于opencascade开源库开发的一个开源CAD应用代码工程库(OpenCASCADE 是一套开源代码的CAD/CAM/CAE几何模型核心,为数不多的开源几何造型引擎),可以查看常见的cad格式和点云格式(.step、.obj、.ply等),还有常见的模型树,还有许多可视化和测量图元的功能,用来学习opencascade和拓展为其他应用CAD程序,非常之好!
2️⃣mayo源码是值得学习,编译代码工程是必要的,cmake或者vs编译会让初学者望而止步,所以在这里用qmake编译,并且可以作为opencascade自主开发的一个好实例。

⚡️ 最新功能(截止7.8.2)

在这里插入图片描述
在这里插入图片描述

😊另外,还可以支持多种交互操作,基本达到常见的cad功能软件交互体验!

软件界面如下:

在这里插入图片描述

二、编译准备

🌈说明:本次编译是由下面两个工具进行配置的(qt creator 和Opencascade为必须品,请必须留意对应的版本号),需要的分别是:

  • 1️⃣QT Creator(6.6.3):采用qamke工程(.pro文件)编译,cmake不包括(要搞自己搞),理论上qt5.1.2(qt5以上)也是,自己可以试;
    • qt编译器是用msvc2019,到时打开pro工程记得勾选,自己也可以试下mingw有没问题!
  • 2️⃣OpenCASCADE(opencascade-7.5.0):这个版本一定要对应上,7.5算是比较新又比较好(如果mayo官方有用其他很新的版本,也可以用新的Opencascade),用的是官网下载好的文件(7.5的安装程序)
    • 下载地址
    • 在这里插入图片描述
    • 下载完,就安装程序,过程中会提示,用的是自定义版本还是全版本,这里用的是全版本,等待安装完成就行,这个是源代码和lib引用的地方,放个好位置吧;
  • 3️⃣mayo工程:这里用的是master分支(因为这个有pro文件,只修改几个地方就行了,这个分支记得选master分支),clone下来或者下载对应分支的zip包;
    • mayo地址
    • 在这里插入图片描述
    • 版本大概是2023的出来的master分支

三、编译过程

3.1QT Creator打开源码的pro工程

在这里插入图片描述

我比较习惯用msvc2019,mingw没试过
在这里插入图片描述

3.2修改几处pro配置

1️⃣主要修改的是对opencascade的Lib引用和include位置,对自己安装的qt的一些配置
在这里插入图片描述
2️⃣主要将这两个变量值修改为自己安装opencascade的Lib引用位置(可以发现这个目录底下有很多Lib文件)和include位置(包含.hpp文件),其他变量值暂时不用管,如下:
在这里插入图片描述
3️⃣引用的位置如下(自己对应就行):
在这里插入图片描述
在这里插入图片描述
4️⃣在头文件src/app/windows/version.h有个数字缺少了,自己填上即可,填完后记得ctrl +s保存(又可能工程点重新清除或构建的话,这个数字自动也会清除,自己补上即可)(这里填8,其他应该也行)(也可先编译debug先,然后等编译器提示后,点击错误提示再打开这个文件修改)

在这里插入图片描述
在这里插入图片描述

  • ⚡️还有一个地方,要注意,就是这个winextras模块(如果debug过程有提示error: Unknown module(s) in QT: winextras),把这个模块直接注释掉就行,因为有的人压根安装qt的时候没安装这个,不用重新下,直接注释(我的好像安装了,而且用的是qt6,所以不注释,留着,有这个问题的朋友可以留意下)
    在这里插入图片描述
    在这里插入图片描述

3.3复制所需的动态链接库

1️⃣接着debug编译,会提示缺少很多动态链接库:
在这里插入图片描述
2️⃣主要是把opencascade的Lib库隔壁的bin目录下,复制所有的dll到debug即可:
在这里插入图片描述
3️⃣另外,mayo也依赖其他的库,在Opencascade安装库目录下,找到其他第三方库的动态链接库(QT如果配置好环境变量就不用复制了,否则老实复制进去吧):

在这里插入图片描述
位置一般在对应文件的bin目录下:
在这里插入图片描述
一般依赖的第三方动态链接库如下(除Opencascade外),自己安装对应的找出来(第一次会比较烦,也可以用脚本复制,最好把需要的dll都复制到一个文件夹里面,以后用到会方便点):
把Opencascade和依赖的第三方库就复制到生成程序的debug目录下,这样程序debug目录下,就有依赖的所有文件了(如果还有漏,自己按照提示找吧):
在这里插入图片描述

3.4编译完成

接着,到此应该没啥问题,debug编译,大功告成!
在这里插入图片描述


最后,文中若有不足,敬请批评指正!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/919030.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ISUP协议视频平台EasyCVR私有化部署视频平台如何实现RTMP推流将大疆无人机的视频画面回传?

在现代视频监控和流媒体技术领域,EasyCVR视频融合云平台以其卓越的性能和灵活性,成为了跨区域、网络化视频监控综合管理的理想选择。作为TSINGSEE青犀视频“云边端”架构体系中的核心组件,私有化部署视频平台EasyCVR不仅能够实现视频数据的集…

如何高效实现汤臣倍健营销云数据集成到SQLServer

新版订单同步-(Life-Space)江油泰熙:汤臣倍健营销云数据集成到SQL Server 在企业信息化建设中,数据的高效集成和管理是提升业务运营效率的关键。本文将分享一个实际案例——如何通过新版订单同步方案,将汤臣倍健营销云…

OpenHarmony-2.DeviceInfo适配

DeviceInfo适配说明 1.启动子系统设备信息说明 2.OHOS 2.1.OHOS 固定值参数适配 OHOS 固定值参数: const.ohos.version.security_patch const.ohos.releasetype const.ohos.apiversion const.ohos.fullname适配说明: OHOS 固定值参数由OHOS系统填充&#xff0…

Java实现两数交换

文章目录 实现两数交换方法一、(数组的方式进行交换)方法二、(对象的方式进行交换)总结 实现两数交换 实现两数交换,没有办法通过直接传递数字达到交换的结果,定义的int型变量是被存储在栈空间上的&#xf…

uniapp 购物弹窗组件 (微信小程序)

效果图&#xff0c;暂时只适应单规格&#xff0c;居中弹出和下方弹出&#xff0c;如需求不满足&#xff0c;请自行修改代码 &#xff08;更新于24/11/15) 居中显示效果 下方弹出效果 html <template><view class"" v-if"show":class"mod…

革新车间照明,分布式IO模块引领智能制造新纪元

在智能制造的浪潮中&#xff0c;每一个细节的优化都是推动生产效率与能耗管理迈向新高度的关键。车间照明系统&#xff0c;作为生产环境中不可或缺的一环&#xff0c;其智能化升级正成为众多企业转型升级的重要着力点。 一、从传统到智能&#xff1a;照明系统的变革之旅 传统…

Java基于微信小程序+SSM的校园失物招领小程序

博主介绍&#xff1a;✌程序员徐师兄、7年大厂程序员经历。全网粉丝12w、csdn博客专家、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专栏推荐订阅&#x1f447;…

微软Office 2021 24年11月授权版

概述 Microsoft Office LTSC 2021 专业增强版是微软公司推出的一款专为企业客户设计的办公软件套件。该版本于2024年11月进行了批量许可版更新推送&#xff0c;旨在为企业用户提供更加稳定、高效的办公体验。 主要特点 LOGO设计趋势强化&#xff1a;新版Office将棱角改为圆角…

uniapp实现中英文切换

home.js const data {ZH: {content1: "苹果",},EN: {content1: “Apple”,} } export default dataindex.js import home from "./home.js" export default {home }en.js import part1 from ./data/part1/index.js const en {language: {name: "…

go-zero(七) RPC服务和ETCD

go-zero 实现 RPC 服务 在实际的开发中&#xff0c;我们是通过RPC来传递数据的&#xff0c;下面我将通过一个简单的示例&#xff0c;说明如何使用go-zero框架和 Protocol Buffers 定义 RPC 服务。 一、生成 RPC项目 在这个教程中&#xff0c;我们根据user.api文件&#xff0…

C#.Net筑基-字符串超全总结

字符串是日常编码中最常用的引用类型了&#xff0c;可能没有之一&#xff0c;加上字符串的不可变性、驻留性&#xff0c;很容易产生性能问题&#xff0c;因此必须全面了解一下。 01、字符与字符编码 1.1、字符Char 字符 char 表示为 Unicode字符&#xff0c;在C#中用 UTF-16 …

ROS Action

在 ROS 中&#xff0c;Action 是一种支持长时间异步任务的通信机制。与 Service 不同&#xff0c;Action 允许客户端发起一个请求&#xff0c;并在任务执行的过程中不断接收反馈&#xff0c;直到任务完成。这种机制非常适用于可能需要较长时间来完成的任务&#xff0c;比如机器…

23.UE5删除存档

2-25 删除存档制作_哔哩哔哩_bilibili 按照自己的风格制作删除按钮 这样该行的存档就被从存档列表中删除了&#xff0c;并且实际存档&#xff08;我的存档蓝图&#xff09;中也被删除了 但是存在一个问题&#xff0c;如果存档数据中存在索引为: 0 1 2 3的存档&#xff0c;当索…

LoFTR: Detector-Free Local Feature Matching with Transformers—特征点匹配算法系列

LoFTR: Detector-Free Local Feature Matching with Transformers 受到&#xff1a;受到开创性作品 SuperGlue 的启发 摘要总结&#xff1a; 提出了一种局部图像特征匹配的新方法。更为突出说明的是室内场景下的特征点的匹配问题。 不是依次执行图像特征检测、描述和匹配&#…

图像基础算法学习笔记

目录 概要 一、图像采集 二、图像标注 四、图像几何变换 五、图像边缘检测 Sobel算子 Scharrt算子 Laplacian算子 Canny边缘检测 六、形态学转换 概要 参考书籍&#xff1a;《机器视觉与人工智能应用开发技术》 廖建尚&#xff0c;钟君柳 出版时间&#xff1a;2024-…

排序算法 -归并排序

文章目录 1. 归并排序&#xff08;Merge Sort&#xff09;1.1 简介1.2 归并排序的步骤1.3 归并排序c 语言实现代码说明 1.4 时间复杂度1.5 空间复杂度1.6 动画 1. 归并排序&#xff08;Merge Sort&#xff09; 1.1 简介 归并排序&#xff08;Merge Sort&#xff09;是一种基于…

wireshark 基础

wireshark 基础 一、wireshark介绍 Wireshark&#xff08;前称Ethereal&#xff09;是一个网络封包分析软件。网络封包分析软件的功能是捕获网络封包&#xff0c;并尽可能显示出最为详细的网络封包资料。Wireshark使用WinPCAP作为接口&#xff0c;直接与网卡进行数据报文交换…

GIT 入门详解指南

前言&#xff1a; 注&#xff1a;本博客仅用于记录本人学习过程中对git的理解&#xff0c;仅供学习参考&#xff0c;如有异议请自行查资料求证 安装 使用git之前必须完成git的安装&#xff0c;Git 目前支持 Linux/Unix、Solaris、Mac和 Windows 平台上运行 git 安装教程 基本…

从 IDC 到云原生:稳定性提升 100%,成本下降 50%,热联集团的数字化转型与未来展望

作者&#xff1a;金峰&#xff08;项良&#xff09;、朱永林、赵世振&#xff08;寰奕&#xff09; 公司简介 杭州热联集团股份有限公司成立于 1997 年 10 月&#xff0c;是隶属杭州市实业投资集团的国有控股公司。公司专业从事国际、国内钢铁贸易黑色大宗商品及产业服务&…

【微软:多模态基础模型】(4)统一视觉模型

欢迎关注[【youcans的AGI学习笔记】](https://blog.csdn.net/youcans/category_12244543.html&#xff09;原创作品 【微软&#xff1a;多模态基础模型】&#xff08;1&#xff09;从专家到通用助手 【微软&#xff1a;多模态基础模型】&#xff08;2&#xff09;视觉理解 【微…