CN103729876A - 一种三维人造物体模型形变方法 - Google Patents
一种三维人造物体模型形变方法 Download PDFInfo
- Publication number
- CN103729876A CN103729876A CN201310684838.2A CN201310684838A CN103729876A CN 103729876 A CN103729876 A CN 103729876A CN 201310684838 A CN201310684838 A CN 201310684838A CN 103729876 A CN103729876 A CN 103729876A
- Authority
- CN
- China
- Prior art keywords
- culture model
- primitive
- dimensional culture
- model assembly
- primitive body
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本发明涉及计算机图形领域,提供了一种三维人造物体模型形变方法,包括获取三维人造物体模型部件的基元体;检测所有三维人造物体模型部件的基元体之间的关系;建立人造物体模型部件的基元体的结构关系约束集;编辑三维人造物体模型部件的基元体集合;恢复三维人造物体模型部件结构。本发明实现了同时处理多个部件基元体同时被编辑后的结构恢复。
Description
技术领域
本发明涉及计算机图形领域,特别是涉及一种三维人造物体模型形变方法。
背景技术
三维模型的编辑和形变是基于现有三维模型生成新的变种的常用方法。用户通过鼠标拖拽更改模型上的某个部分,需要计算机自动计算,将这个局部变化传播到模型的其余部分。对于三维人造物体而言,用户往往操作编辑一个部件,我们需要将该编辑从被操作部件传播到其余部件,同时保持人造物体的原有结构,如某些部件之间的平行关系、正交关系、共面关系等。
为此,有研究者提出了针对三维人造物体模型部件的抽象表示,即将每个部件抽象为一个基元体,根据部件的形状,他们考虑四种基元:长方体、球体、圆柱体和广义圆柱体。然后将人造物体的结构信息表示为基元本身的结构,即基元体的参数,如长方体的三边长,广义圆柱体的中轴参数曲线等,以及基元之间的关系,如基元之间的平行、对称、正交、共面、同心等关系。
研究者提出的方法采用编辑传播方式实现结构保持的形变。它的缺点是,同时只能处理一个部件基元的编辑,因为传播是从一个基元体到其它基元体的单向传播。这样,该方法无法处理多个部件同时变化时,三维人造物体的结构恢复。
针对此缺点,本发明采用了一种迭代式约束满足的方法,可以同时处理多个部件基元同时被编辑后的结构恢复。
发明内容
本发明采用一种三维人造物体模型形变方法,实现了同时处理多个部件基元体同时被编辑后的结构恢复。
本发明采用如下方案:
一种三维人造物体模型形变方法,包括:
获取三维人造物体模型部件的基元体;
检测所有三维人造物体模型部件的基元体之间的关系;
建立人造物体模型部件的基元体的结构关系约束集;
编辑三维人造物体模型部件的基元体集合;
恢复三维人造物体模型部件结构。
优选地,所述获取三维人造物体模型部件的基元体,包括下述步骤:
基于Rotating calipers算法计算三维人造物体模型部件最紧致的有向包围盒;
基于表面网格收缩算法计算三维人造物体模型部件的骨架;
根据骨架上采样点到表面的距离得到一个半径,所有骨架点都有一个半径,就可以生成一个广义圆柱体,圆柱的中心线就是骨架,半径随着模型粗细变化而变化;
选取有向包围盒的最小体积和广义圆柱体的最小体积的最大值作为三维人造物体模型部件的基元体。
优选地,所述检测所有三维人造物体模型部件的基元体之间的关系,包括检测对称、平行、正交、共面,同心五种关系。
优选地,所述检测所有三维人造物体模型部件的基元体之间的关系的方法为:
对称关系通过比较两个基元的参数来实现,如果两个基元属于同类且参数相近,则二者对称;对于彼此对称的基元体,检测二者是否平行;对于彼此相邻的两个长方体基元,检测二者是否正交以及是否共面;对于两个圆柱体,检测它们的轴是否共线。
优选地,所述编辑三维人造物体模型部件的基元体,包括编辑一个基元体和编辑多个基元体。
优选地,所述恢复三维人造物体模型部件结构,包括:
S601、根据基元体之间的临近关系,构建一个基元图,其节点是基元体,边代表基元体之间的相邻关系;
S602、对用户编辑三维人造物体模型部件的基元体集合中的每个基元体,计算以基元体为根节点的基元图的生成树;
S603、根据根节点到叶节点的宽度优先顺序遍历生成树,逐一处理生成树中的节点,当处理到的节点属于人造物体模型部件的基元体的结构关系约束集,即该节点满足人造物体模型部件的基元体的结构关系;
S604、对用户编辑三维人造物体模型部件的基元体集合中的所有节点采用S603的步骤进行遍历,即完成一次迭代;
S605、重复进行迭代步骤,直到所有基元体的变化量小于指定阈值,即恢复三维人造物体模型部件结构。
本发明公开的一种三维人造物体模型形变方法,通过获取三维人造物体模型部件的基元体;检测所有三维人造物体模型部件的基元体之间的关系;建立人造物体模型部件的基元体的结构关系约束集;编辑三维人造物体模型部件的基元体集合;恢复三维人造物体模型部件结构。实现了同时处理多个部件基元同时被编辑后的结构恢复。
附图说明
图1为本发明实施例1种结构保持的三维人造物体模型形变方法流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例提供了种结构保持的三维人造物体模型形变方法,包括:
获取三维人造物体模型部件的基元体;
检测所有三维人造物体模型部件的基元体之间的关系;
建立人造物体模型部件的基元体的结构关系约束集;
编辑三维人造物体模型部件的基元体集合;
恢复三维人造物体模型部件结构。
本发明实施例通过获取三维人造物体模型部件的基元体;检测所有三维人造物体模型部件的基元体之间的关系;建立人造物体模型部件的基元体的结构关系约束集;编辑三维人造物体模型部件的基元体集合;恢复三维人造物体模型部件结构。实现了同时处理多个部件基元同时被编辑后的结构恢复。
下面对本发明进行详细阐述。
实施例1:
请参阅图1所示,为本发明一种三维人造物体模型形变方法流程图。
该方法包括下述步骤:
步骤S1:获取三维人造物体模型部件的基元体。
获取三维人造物体模型部件的基元体,包括下述步骤:
基于Rotating calipers算法计算三维人造物体模型部件最紧致的有向包围盒;
基于表面网格收缩算法计算三维人造物体模型部件的骨架;
根据骨架上采样点到表面的距离得到一个半径,所有骨架点都有一个半径,就可以生成一个广义圆柱体,圆柱的中心线就是骨架,半径随着模型粗细变化而变化;
选取有向包围盒的最小体积和广义圆柱体的最小体积的最大值作为三维人造物体模型部件的基元体。
步骤S2:检测所有三维人造物体模型部件的基元体之间的关系。
检测所有三维人造物体模型部件的基元体之间的关系的方法为:
对称关系通过比较两个基元的参数来实现,如果两个基元属于同类且参数相近,则二者对称;对于彼此对称的基元体,检测二者是否平行;对于彼此相邻的两个长方体基元,检测二者是否正交以及是否共面;对于两个圆柱体,检测它们的轴是否共线。
步骤S3:建立人造物体模型部件的基元体的结构关系约束集。
步骤S4:编辑三维人造物体模型部件的基元体集合。
用户同时编辑多个基元体。
步骤S5:恢复三维人造物体模型部件结构。
恢复三维人造物体模型部件结构,包括:
S601、根据基元体之间的临近关系,构建一个基元图,其节点是基元体,边代表基元体之间的相邻关系;
S602、对用户编辑三维人造物体模型部件的基元体集合中的每个基元体,计算以基元体为根节点的基元图的生成树;
S603、根据根节点到叶节点的宽度优先顺序遍历生成树,逐一处理生成树中的节点,当处理到的节点属于人造物体模型部件的基元体的结构关系约束集,即该节点满足人造物体模型部件的基元体的结构关系;
S604、对用户编辑三维人造物体模型部件的基元体集合中的所有节点采用S603的步骤进行遍历,即完成一次迭代;
S605、重复进行迭代步骤,直到所有基元体的变化量小于指定阈值,即恢复三维人造物体模型部件结构。
本发明公开的一种三维人造物体模型形变方法,通过获取三维人造物体模型部件的基元体;检测所有三维人造物体模型部件的基元体之间的关系;建立人造物体模型部件的基元体的结构关系约束集;编辑三维人造物体模型部件的基元体集合;恢复三维人造物体模型部件结构。实现了同时处理多个部件基元同时被编辑后的结构恢复。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种三维人造物体模型形变方法,其特征在于,包括:
获取三维人造物体模型部件的基元体;
检测所有三维人造物体模型部件的基元体之间的关系;
建立人造物体模型部件的基元体的结构关系约束集;
编辑三维人造物体模型部件的基元体集合;
恢复三维人造物体模型部件结构。
2.根据权利要求1所述的方法,其特征在于,所述获取三维人造物体模型部件的基元体,包括下述步骤:
基于Rotating calipers算法计算三维人造物体模型部件最紧致的有向包围盒;
基于表面网格收缩算法计算三维人造物体模型部件的骨架;
根据骨架上采样点到表面的距离得到一个半径,所有骨架点都有一个半径,就可以生成一个广义圆柱体,圆柱的中心线就是骨架,半径随着模型粗细变化而变化;
选取有向包围盒的最小体积和广义圆柱体的最小体积的最大值作为三维人造物体模型部件的基元体。
3.根据权利要求1所述的方法,其特征在于,所述检测所有三维人造物体模型部件的基元体之间的关系,包括检测对称、平行、正交、共面,同心五种关系。
4.根据权利要求3所述的方法,其特征在于,所述检测所有三维人造物体模型部件的基元体之间的关系的方法为:
对称关系通过比较两个基元的参数来实现,如果两个基元属于同类且参数相近,则二者对称;对于彼此对称的基元体,检测二者是否平行;对于彼此相邻的两个长方体基元,检测二者是否正交以及是否共面;对于两个圆柱体,检测它们的轴是否共线。
5.根据权利要求1所述的方法,其特征在于,所述编辑三维人造物体模型部件的基元体,包括编辑一个基元体和编辑多个基元体。
6.根据权利要求1所述的方法,其特征在于,所述恢复三维人造物体模型部件结构,包括:
S601、根据基元体之间的临近关系,构建一个基元图,其节点是基元体,边代表基元体之间的相邻关系;
S602、对用户编辑三维人造物体模型部件的基元体集合中的每个基元体,计算以基元体为根节点的基元图的生成树;
S603、根据根节点到叶节点的宽度优先顺序遍历生成树,逐一处理生成树中的节点,当处理到的节点属于人造物体模型部件的基元体的结构关系约束集,即该节点满足人造物体模型部件的基元体的结构关系;
S604、对用户编辑三维人造物体模型部件的基元体集合中的所有节点采用S603的步骤进行遍历,即完成一次迭代;
S605、重复进行迭代步骤,直到所有基元体的变化量小于指定阈值,即恢复三维人造物体模型部件结构。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310684838.2A CN103729876B (zh) | 2013-12-12 | 2013-12-12 | 一种三维人造物体模型形变方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310684838.2A CN103729876B (zh) | 2013-12-12 | 2013-12-12 | 一种三维人造物体模型形变方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103729876A true CN103729876A (zh) | 2014-04-16 |
CN103729876B CN103729876B (zh) | 2017-05-10 |
Family
ID=50453937
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310684838.2A Active CN103729876B (zh) | 2013-12-12 | 2013-12-12 | 一种三维人造物体模型形变方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103729876B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106408655A (zh) * | 2016-09-21 | 2017-02-15 | 江苏大学 | 一种新型的3d镂空灯罩设计方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102254343A (zh) * | 2011-07-01 | 2011-11-23 | 浙江理工大学 | 一种基于凸包与obb的三维网格模型骨架提取方法 |
CN103218852A (zh) * | 2013-04-19 | 2013-07-24 | 牡丹江师范学院 | 一种面向蒙皮动画的基于网格收缩的三维网格模型骨架提取系统及骨架提取方法 |
-
2013
- 2013-12-12 CN CN201310684838.2A patent/CN103729876B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102254343A (zh) * | 2011-07-01 | 2011-11-23 | 浙江理工大学 | 一种基于凸包与obb的三维网格模型骨架提取方法 |
CN103218852A (zh) * | 2013-04-19 | 2013-07-24 | 牡丹江师范学院 | 一种面向蒙皮动画的基于网格收缩的三维网格模型骨架提取系统及骨架提取方法 |
Non-Patent Citations (2)
Title |
---|
YOUYI ZHENG,ETC.: "Component-wise Controllersfor Structure-Preserving Shape Manipulation", 《COMPUTER GRAPHICS FORUM》 * |
徐凯: "语义驱动的三维形状分析及建模", 《中国博士学位论文全文数据库 信息科技辑》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106408655A (zh) * | 2016-09-21 | 2017-02-15 | 江苏大学 | 一种新型的3d镂空灯罩设计方法 |
CN106408655B (zh) * | 2016-09-21 | 2019-04-05 | 江苏大学 | 一种3d镂空灯罩设计方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103729876B (zh) | 2017-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103729475B (zh) | 一种社交网络中的多标签传播重叠社区发现方法 | |
CN103886641B (zh) | 山地城市区域地质三维模型构建集成方法 | |
CN101582173B (zh) | 复杂地质构造块状模型构建方法 | |
CN102819865B (zh) | 一种大地电磁三维地质结构模型的建模方法 | |
CN103236088B (zh) | 基于复合网格的三维地质体构造建模方法与系统 | |
CN104598605A (zh) | 一种社交网络中的用户影响力评估方法 | |
CN105701204A (zh) | 基于道路网的电子地图兴趣点的提取方法及显示方法 | |
CN102609982B (zh) | 空间地质数据非结构化模式的拓扑发现方法 | |
CN103500468B (zh) | 基于边界约束的空间曲面重建方法 | |
CN103870845A (zh) | 点云聚类去噪过程中新的k值优化方法 | |
CN102298795A (zh) | Stl三角网格模型的三维分段方法 | |
CN103907118A (zh) | 用于在储层模拟系统中进行粗化的系统和方法 | |
CN110599584B (zh) | 一种基于Dynamo和Revit的层状实体模型创建方法 | |
CN102682476B (zh) | 三角网格数据的布尔运算方法及其系统 | |
CN106204748B (zh) | 一种基于特征的cad体网格模型编辑、优化方法 | |
Aubry et al. | A surface remeshing approach | |
CN116645484B (zh) | 地质曲面模型的构建方法、装置、电子设备及存储介质 | |
CN103729876A (zh) | 一种三维人造物体模型形变方法 | |
CN106780747A (zh) | 一种快速分割cfd计算网格的方法 | |
Fryazinov et al. | BSP-fields: An exact representation of polygonal objects by differentiable scalar fields based on binary space partitioning | |
CN102142155A (zh) | 面向网络交互可视化的地面三维模型数据组织方法 | |
CN112150628A (zh) | Bim数据在gis平台中构建三维体数据模型的方法 | |
Shen et al. | An adaptive triangulation optimization algorithm based on empty circumcircle | |
Sun et al. | An efficient mesh generation method for fractured network system based on dynamic grid deformation | |
CN109359342A (zh) | 一种涵洞bim模型切割路基bim模型的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |