三维CAD核心技术及发展趋势

简介: 三维CAD核心技术及发展趋势

本文源自对华天软件CTO梅敬成博士视频分享的总结

一、发展历程

三维CAD起源于高端制造业的需求,例如航天、航空和汽车。


1856d29392c34d16a8cb042da1cc11b4.png

(1)什么是参数化设计?


无论多么复杂的几何模型,都可以分解成有限数量的构成特征,每个构成特征则又可以用有限的参数完全约束,这是参数化设计的基本前提。


根据1994年邹定国《参数化设计》中的定义:参数设计是一种使用重要几何参数快速构造和修改几何模型的造型方法。这些重要的几何参数包括控制形体大小的尺寸和定位形体的方向矢量等。


从技术层面来讲,三维几何建模引擎的出现让参数化设计成为可能,它使得图形的修改变得非常容易。那么,参数化设计解决了什么样需求呢。当我们的产品设计经过反复论证后,大致构造已经基本确定了,我们希望把这个产品做成一个系列,以后的产品可以直接在它的基础上迭代,提高建模效率,于是将模型设计中的定量数据变量化就成了一个有效的方式。

参数化技术的关键点之一在于约束。约束可分为几何约束和工程约束,其中几何约束包括了结构约束(平行、垂直、重合、相切、对称等)和尺寸约束(距离、半径、角度等);而工程约束是指尺寸之间的约束关系,通过定义它们在数值或逻辑上的关系来表达。


08e79c1d4d7348b993c5199e64d2580b.png


上图是实现参数化设计的方法之一,由于每个建模软件的关注点不同,参数设计方法也有所不同,但大致可以分为两类,一是人机交互法,见下图;二是直接编程法,借助软件API接口进行二次开发实现参数化。每款软件可以同时支持以下多种设计方法。例如,CATIA软件中草图的参数化是通过代数求解法来实现的,而其他参数化过程是采用基于构造过程的构造法来完成的;Revit中则支持代数求解法和辅助线法。


(2)什么是基于特征的参数化建模?


传统CAD系统只能表达产品几何信息,没有语义和功能信息,换句话说,就是计算机不认识你的模型,它不知道哪个是盲孔,哪个又是螺纹,因为对它来说都是一堆无意义的几何元素罢了。这样的话,模型交付到制造商那,就需要进行信息再识别,人为赋予元素特定的含义,流程上带来了很多不便。

为了支持CAD与CAM的集成,就提出了特征建模的概念,这个概念里包含了三个策略:


并行设计:充分考虑加工的要求,以“加工的思维”去设计,例如切削、铸造、装配;

面向装配的设计:以装配的目标来指导零件设计;

参数化设计

这样一来,特征中既包括了几何信息,也有抽象的语义信息,如几何公差、粗糙度、装配和检验要求等。


(3)什么是基于历史记录的实体建模?


直观地来说,基于历史记录的实体建模的特征在于:左边有一个长历史树,右边有一个对应的参数化模型。基于历史记录的建模方法保存了所有构造过程,方便理解设计思路和部件之间的关联关系。而无历史记录的建模方法,只能得到一个模型结果,其好处在于使得设计人员专注于设计本身,且模型也更加轻量化。


7d4853f0c97845d3b5c1d06d67d59ff9.png

2ddaec42d02a333f1866ae6609d1fef8.png


(4)什么又是直接建模?


直接建模颠覆了传统CAD的建模方法,完全可以脱离鼠标和键盘使用移动设备进行设计,且有着简约的交互方式,深入贯彻了“最好的界面是没有界面”的理念,正如以下Shapr3D软件的操作过程。

直接建模视频链接


(5)什么是CSG和B-Rep表示法


计算机中表示三维形体的模型,按照几何特点进行分类,大体上可以分为三种:线框模型、表面模型和实体模型。


e4a768dd158df01e361518dc518fc112.png


如果按照表示物体的方法进行分类,实体模型基本上可以分为分解表示、构造表示CSG(Constructive Solid Geometry)和边界表示B-Rep(Boundary Representation)三大类。

CSG建模法,一个物体被表示为一系列简单的基本物体(如立方体、圆柱体、圆锥体等)的布尔操作的结果,数据结构为树状结构。而B-Rep的一个物体被表示为许多曲面(例如面片,三角形,样条)粘合起来形成封闭的空间区域,按照体-面-环-边-点的层次,详细记录了构成形体的所有几何元素的几何信息及其相互连接的拓扑关系。

6d04d448f7b1b7d8cde7c3d4127999f3.png

image.png


二、核心技术及难点


(1)三维几何建模引擎

几何要素多

功能多:拉伸、旋转、扫掠、放样、填充、桥接、布尔等

鲁棒、精确且高效

对参数化的支持:特征建模、拓朴命名

兼容性、可扩展性

(2)几何约束求解器

包括草图中的2D几何约束求解器,装配中的3D几何约束求解器。


几何欠约束系统的优化匹配

几何约束冗余性判定

大规模约束方程组求解

(3)参数化机制

实现草图、零件、工程图、三维标注等功能的联动

应用层机制:拓朴命名、undo/redo、数据管理

与“直接建模”融合

(4)显示和渲染

操作性、流畅度

拾取:捕捉、导航

显示技术:OpenGL、Shader

系统依赖:MFC、.NET、QT


三、发展趋势


技术变化:互联网、云计算

设计模式变化:从单机离线到多人协同

制造规模变化:超大规模、超复杂度

CAD前沿### 四、参考资料

参数化3D建模实例

《基于特征的参数化设计方法》-郭连水

《参数化设计》-邹定国

三维参数化设计探究-参数化方法论

CAD/CAM中的特征技术综述

三维几何建模-1

边界表示法.ppt


相关文章
|
Java Android开发 C++
Rockchip系列之CAN 新增framework系统jni接口访问(2)
Rockchip系列之CAN 新增framework系统jni接口访问(2)
188 3
|
安全 关系型数据库 MySQL
CentOS8 安装 MySQL8.0(RPM)
环境:Linux centos8 4.18.0-80.el8.x86_64、Mysql8.0.18
8916 0
|
Linux Apache 数据安全/隐私保护
kali向Apache上部署网页
kali向Apache上部署网页
290 5
|
安全 网络安全 数据安全/隐私保护
HTTPS 请求中的证书验证详解(Python版)
HTTPS 请求中的证书验证详解(Python版)
726 0
|
网络协议 数据库 网络架构
一张图带你精通 OSPF 8种邻居状态机!
【4月更文挑战第25天】
2023 0
一张图带你精通 OSPF 8种邻居状态机!
|
安全 网络协议 前端开发
< 了解 HTTP 这一篇就够了 :什么是 HTTP ?HTTP 和 HTTPS 有什么区别 ? >
在前端开发中,是和浏览器打交道最为频繁的行业之一。但是大部分卷王们,可能仅仅是知道如何使用浏览器,只是知道 URL 跳转到浏览器变成一个完整的网页。 本篇文章将讲述 什么是HTTP、 HTTP 和 HTTPS的区别 及 URL 是如何渲染到页面。 那么到这里,肯定会有人问: 那我们为什么要学习这个呢 ? 问得好,这个分为两方面: 一是学习上述内容,能够厚实我们的理论基础。有些内容,虽然用的不多,但是技多不压身,道理懂吧? 二是学习这个,对我们后续的性能优化、排查浏览器上某些错误 的能力都有提升!
1072 0
< 了解 HTTP 这一篇就够了 :什么是 HTTP ?HTTP 和 HTTPS 有什么区别 ? >
|
测试技术 Shell 开发工具
Playwright 系列(13):如何调试测试用例
Playwright 系列(13):如何调试测试用例
781 0
Playwright 系列(13):如何调试测试用例
|
数据采集 人工智能 供应链
案例分析:西门子智能工厂
案例分析:西门子智能工厂
1274 0
|
数据采集 安全 搜索推荐
什么是谷歌独立站?
答案是:谷歌独立站就是利用Wordpress或者Shopify做的个人网站。 谷歌独立站的特点 内容为王 一个成功的谷歌独立站始终注重内容的质量和原创性。 高质量的内容能够吸引更多的用户,同时也更容易获得其他网站的链接,从而提高在Google搜索结果中的排名。 结构清晰 谷歌独立站的结构通常非常清晰,每个页面都有明确的目的,易于导航。 这不仅有助于提供良好的用户体验,也使谷歌的爬虫更容易抓取和索引网站内容。
1714 1
什么是谷歌独立站?
|
算法 测试技术
从0到1打造正则表达式执行引擎(二) NFA转DFA
然后对DFA的节点0执行步骤1,找到NFA中所有a可达的NFA节点(1#2#4#6#8#9)构成NFA中的节点1,如下图。
283 0
下一篇
开通oss服务