平面模型包围多边形生成方法、装置及家具轮廓识别方法制造方法及图纸

技术编号:32510325 阅读:52 留言:0更新日期:2022-03-02 10:53
本申请实施例提供一种平面模型包围多边形生成方法、装置及家具轮廓识别方法,其中,平面模型的包围多边形的生成方法包括:获取网格模型;构造所述网格模型的矩形包围盒;对所述网格模型和所述矩形包围盒使用带约束条件的算法,生成所述网格模型的包围多边形;所述包围多边形包围所述网格模型,且与所述网格模型没有交点。实施本申请实施例,能够生成平滑、有距离约束、与实际平面模型相近的包围多边形。与实际平面模型相近的包围多边形。与实际平面模型相近的包围多边形。

【技术实现步骤摘要】
平面模型包围多边形生成方法、装置及家具轮廓识别方法


[0001]本申请涉及计算机图形学
,具体而言,涉及一种平面模型的包围多边形的生成方法、装置及家具轮廓识别方法。

技术介绍

[0002]随着平面模型获取技术的飞速发展,计算机图形学处理的模型精度和复杂度越来越高,以往的几何处理算法在普适性和计算复杂度上都面临新的挑战。采用与原模型形状相似但顶点数较少的包围网格作为包围多边形来衔接复杂模型与算法是一个趋势。在模型编辑领域中,对复杂的模型生成一个包围多边形可以大大提高效率,通过操纵包围多边形可以实现原模型的实时平滑变形。包围多边形被广泛应用于变形迁移、碰撞检测、家居检测等领域。
[0003]现有技术中,通常采用交互式或者人工的方式构建平面模型的包围多边形。现有的生成包围多边形的方法理论上无法保证严格满足包围性,无自交约束,对于复杂的模型算法可能会失败或者出现包围多边形自相交,与输入模型相交的情况,生成的包围多边形与平面模型相差较大。在家居领域中,为了构建良好的家居效果图,需要模拟家居移动,这要求生成家具良好的包围多边形,而现有的生成方法效果不佳。

技术实现思路

[0004]本申请实施例的目的在于提供一种平面模型的包围多边形的生成方法、装置及家具轮廓识别方法,能够生成平滑、有距离约束、与实际平面模型相近的包围多边形。
[0005]第一方面,本申请实施例提供了一种平面模型的包围多边形的生成方法,包括:
[0006]获取平面模型的网格模型;
[0007]构造所述网格模型的矩形包围盒;
[0008]使用带约束条件的算法对所述网格模型和所述矩形包围盒进行处理,生成所述网格模型的包围多边形;所述包围多边形包围所述网格模型,且与所述网格模型没有交点。
[0009]在上述实现过程中,首先通过获取平面模型的网格模型,可以将平面模型二维化,构建网格模型的矩形包围盒,形成初步的构建基础,对网格模型和矩形包围盒使用待约束条件的算法,生成包围多边形。与现有技术相比,通过构造矩形包围盒和使用待约束条件的算法,能够使得生成的包围多边形有距离约束,平滑。
[0010]进一步地,所述对所述网格模型使用带约束条件的算法,生成所述网格模型的包围多边形的步骤,包括:
[0011]判断所述网格模型是否为单连通图形;
[0012]若是,使用带约束的Delaunay三角剖分算法对所述矩形包围盒和所述网格模型的外边界进行三角剖分,得到第一三角形集合;根据所述第一三角形集合生成所述包围多边形;
[0013]若否,使用带约束的Delaunay三角剖分算法对所述网格模型的内边界所述网格模
型的外边界和所述矩形包围盒的外边界进行三角剖分,得到第二三角形集合;根据所述第二三角形集合生成所述包围多边形。
[0014]在上述实现过程中,通过带约束的Delaunay三角剖分算法对矩形包围盒和网格模型进行处理,得到的第一三角形集合对网格模型的拟合程度更高。
[0015]进一步地,所述根据所述第一三角形集合生成所述包围多边形的步骤,包括:
[0016]步骤一:获取所述网格模型的边界;
[0017]步骤二:移除所述第一三角形集合中的与所述网格模型的边界不相邻的三角形,得到移除后的第一三角形集合;
[0018]步骤三,获取所述移除后的第一三角形集合中的所有边界点,组成第一边界点集合;
[0019]步骤四:获取所述第一边界点集合到所述网格模型的第一Hausdorff距离和所述网格模型到所述第一边界点集合的第二Hausdorff距离;
[0020]步骤五:判断所述第一Hausdorff距离是否大于所述第二Hausdorff距离;若是,执行步骤六,若否,执行步骤七;
[0021]步骤六:判断所述第一Hausdorff距离是否大于第一预设值,若是,执行步骤八;若否,执行步骤十;
[0022]步骤七:判断所述第二Hausdorff距离是否大于第二预设值,若是,执行步骤九;
[0023]步骤八:更新所述移除后的第一三角形集合:连接所述移除后的第一三角形集合中的每个三角形的所有边的中点;将所述移除后的第一三角形集合作为所述第一三角形集合;执行步骤二;
[0024]步骤九:获取所述网格模型中距离所述第一边界点集合的最远的第一边界点,获取所述第一边界点到所述第二边界点集合的第一最短路径;所述第一最短路径由所述移除后的第一三角形集合中的三角形的边组成;更新所述移除后的第一三角形集合:将组成所述第一最短路径的边所在的三角形的所有边的中点连接,得到多个三角形;将所述移除后的第一三角形集合作为所述第一三角形集合;执行步骤二;
[0025]步骤十:判定当前所述移除后的第一三角集合的边界组成的图形为所述包围多边形。
[0026]在上述实现过程中,移除第一三角形集合中的与所述网格模型的边界不相邻的三角形,能够使得剩下的三角形的边组成的边界与网格模型的边界贴合。Hausdorff距离能够反映两个点集的离散程度,在此基础上,获取所述第一边界点集合到所述网格模型的第一Hausdorff距离和所述网格模型到所述第一边界点集合的第二Hausdorff距离并根据第一Hausdorff距离和第二Hausdorff距离设置阈值,对第一三角形集合进行迭代,最终使得迭代后的第一三角形集合的外边界组成的图形能和网格模型高度贴合。
[0027]进一步地,所述根据所述第二三角形集合生成所述包围多边形的步骤,包括:
[0028]步骤一:获取所述网格模型的边界;
[0029]步骤二:移除所述第二三角形集合中的与所述网格模型的边界不相邻的三角形,得到移除后的第二三角形集合;
[0030]步骤三,获取所述移除后的第二三角形集合中的所有边界点,组成第二边界点集合;
[0031]步骤四:获取所述第二边界点集合到所述网格模型的第三Hausdorff距离和所述网格模型到所述第二边界点集合的第四Hausdorff距离;
[0032]步骤五:判断所述第三Hausdorff距离是否大于所述第四Hausdorff距离;若是,执行步骤六,若否,执行步骤七;
[0033]步骤六:判断所述第三Hausdorff距离是否大于第三预设值,若是,执行步骤八;若否,执行步骤十;
[0034]步骤七:判断所述第四Hausdorff距离是否大于第四预设值,若是,执行步骤九;
[0035]步骤八:更新所述移除后的第二三角形集合:连接所述移除后的第二三角形集合中的每个三角形的所有边的中点;将所述移除后的第二三角形集合作为所述第二三角形集合,执行步骤二;
[0036]步骤九:获取所述网格模型中距离所述第二边界点集合最远的第二边界点,获取所述第二边界点到所述第二边界点集合的第二最短路径;所述第二最短路径由所述移除后的第二三角形集合中的三角形的边组成;更新所述移除后的第二三角形集合:将组成所述第二最短路径的边所在的三角形的所有边的中点连接,得本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种平面模型的包围多边形的生成方法,其特征在于,包括:获取所述平面模型的网格模型;构造所述网格模型的矩形包围盒;使用带约束条件的算法对所述网格模型和所述矩形包围盒进行处理,生成所述网格模型的包围多边形;所述包围多边形包围所述网格模型,且与所述网格模型没有交点。2.根据权利要求1所述的平面模型的包围多边形的生成方法,其特征在于,所述使用带约束条件的算法对所述网格模型和所述矩形包围盒进行处理,生成所述网格模型的包围多边形的步骤,包括:判断所述网格模型是否为单连通图形;若是,使用带约束的Delaunay三角剖分算法对所述矩形包围盒和所述网格模型的外边界进行三角剖分,得到第一三角形集合;根据所述第一三角形集合生成所述包围多边形;若否,使用带约束的Delaunay三角剖分算法对所述网格模型的内边界、所述网格模型的外边界和所述矩形包围盒的外边界进行三角剖分,得到第二三角形集合;根据所述第二三角形集合生成所述包围多边形。3.根据权利要求2所述的平面模型的包围多边形的生成方法,其特征在于,所述根据所述第一三角形集合生成所述包围多边形的步骤,包括:步骤一:获取所述网格模型的边界;步骤二:移除所述第一三角形集合中的与所述网格模型的边界不相邻的三角形,得到移除后的第一三角形集合;步骤三,获取所述移除后的第一三角形集合中的所有边界点,组成第一边界点集合;步骤四:获取所述第一边界点集合到所述网格模型的第一Hausdorff距离和所述网格模型到所述第一边界点集合的第二Hausdorff距离;步骤五:判断所述第一Hausdorff距离是否大于所述第二Hausdorff距离;若是,执行步骤六,若否,执行步骤七;步骤六:判断所述第一Hausdorff距离是否大于第一预设值,若是,执行步骤八;若否,执行步骤十;步骤七:判断所述第二Hausdorff距离是否大于第二预设值,若是,执行步骤九;步骤八:更新所述移除后的第一三角形集合:连接所述移除后的第一三角形集合中的每个三角形的所有边的中点;将所述移除后的第一三角形集合作为所述第一三角形集合;执行步骤二;步骤九:获取所述网格模型中距离所述第一边界点集合的最远的第一边界点,获取所述第一边界点到所述第一边界点集合的第一最短路径;所述第一最短路径由所述移除后的第一三角形集合中的三角形的边组成;更新所述移除后的第一三角形集合:将组成所述第一最短路径的边所在的三角形的所有边的中点连接,得到多个三角形;将所述移除后的第一三角形集合作为所述第一三角形集合;执行步骤二;步骤十:判定当前所述移除后的第一三角集合的边界组成的图形为所述包围多边形。4.根据权利要求2所述的平面模型的包围多边形的生成方法,其特征在于,所述根据所述第二三角形集合生成所述包围多边形的步骤,包括:步骤一:获取所述网格模型的边界;
步骤二:移除所述第二三角形集合中的与所述网格模型的边界不相邻的三角形,得到移除后的第二三角形集合;步骤三,获取所述移除后的第二三角形集合中的所有边界点,组成第二边界点集合;步骤四:获取所述第二边界点集合到所述网格模型的第三Hausdorff距离和所述网格模型到所述第二边界点集合的第四Hausdorff距离;步骤五:判断所述第三Hausdorff距离是否大于所述第四Hausdorff距离;若是,执行步骤六,若否,执行步骤七;步骤六:判断所述第三Hausdorff距离是否大于第三预设值,若是,执行步骤八;若否,执行步骤十;步骤七:判断所述第四Hausdorff距离是否大于第四预设值,若是,执行步骤九;步骤八:更新所述移除后的第二三角形集合:连接所述移除后的第二三角...

【专利技术属性】
技术研发人员:刘玉丹王远程王士玮
申请(专利权)人:广东三维家信息科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1