发明名称 曲面翻面方法
摘要 一种曲面翻面方法,该方法包括步骤:接收三维模型及翻面参数;获取各个选定曲面之环线、环点;求各个选定曲面之相交面;查找需要翻面之曲面;及对需要翻面之曲面进行翻面。本发明能够将三维模型之曲面方向一致化,给三维模型在曲面检测、工业设计、运动控制、逆向工程等方面之应用带来了便利。
申请公布号 TWI375924 申请公布日期 2012.11.01
申请号 TW096146752 申请日期 2007.12.07
申请人 鸿海精密工业股份有限公司 发明人 张旨光;吴新元;王敏
分类号 G06T19/20 主分类号 G06T19/20
代理机构 代理人
主权项 一种曲面翻面方法,能够将三维模型之曲面法线方向一致化,该方法包括以下步骤:(a)接收用户导入之三维模型及用户设置之翻面参数,所述三维模型包括多个曲面之参数方程,所述翻面参数包括选定曲面、基准面及最大公差,所述选定曲面系三维模型中需要方向一致化之曲面;(b)由各个选定曲面之参数方程获取各个选定曲面之环线,由各个选定曲面之环线获取各个选定曲面之环点;(c)根据用户设置之最大公差、获取之各个选定曲面之环点求各个选定曲面之相交面;(d)根据各个选定曲面之相交面在选定曲面中查找需要翻面之曲面;及(e)对需要翻面之曲面进行翻面。如申请专利范围第1项所述之曲面翻面方法,所述步骤(c)包括以下步骤:(c1)从各个选定曲面之环点中选取一个环点作为参考点;(c2)在各个选定曲面之环点中计算该参考点之最近点;(c3)判断该参考点至最近点之距离是否小于等于最大公差,若该参考点至最近点之距离大于最大公差,转至步骤(c5);(c4)若该参考点至最近点之距离小于等于最大公差,则该参考点所在曲面与该最近点所在曲面相交,将该最近点所在曲面记为该参考点所在曲面之相交面;及(c5)判断各个选定曲面之环点中是否还有未选取之环点,若还有未选取之环点,返回步骤(c1)选取一个未选取之环点作为参考点。如申请专利范围第2项所述之曲面翻面方法,所述参考点之最近点满足以下三个条件:(1)最近点与该参考点之距离最近,(2)最近点与该参考点不在同一曲面,以及(3)最近点所在曲面非该参考点所在曲面之相交面。如申请专利范围第2项所述之曲面翻面方法,所述步骤(c2)包括以下步骤:(c21)根据用户设置之最大公差得到该参考点之一组查找点,该组查找点系各个选定曲面环点中之一组环点,在该组环点中查找该参考点之最近点;(c22)从该组查找点中选取一个查找点;(c23)若该查找点与参考点在同一曲面,直接转至步骤(c26);(c24)若该查找点所在曲面系参考点所在曲面之相交曲面,直接转至步骤(c26);(c25)计算参考点与查找点之距离,得到参考点之最近点,该最近点系与参考点距离最近之查找点;及(c26)判断该组查找点中是否还有未选取之查找点,若有未选取之查找点,转至步骤(c22)选取一个未选取之查找点。如申请专利范围第1项所述之曲面翻面方法,所述步骤(d)包括以下步骤:(d1)输入一个基准面作为参考面;(d2)输入该参考面之一个相交面;(d3)判断该参考面与该相交面是否有相交线,若有相交线,得到参考面相交环线、相交面相交环线、参考面最近点及相交面最近点,进入步骤(d4),否则转至步骤(d6);(d4)根据参考面相交环线、相交面相交环线、参考面最近点及相交面最近点判断该相交面是否需要翻面,若不需要翻面,转至步骤(d6),否则将相交面记为需要翻面之曲面;(d5)若该相交面非基准面,将该相交面记为基准面,否则直接进入步骤(d6);(d6)判断该参考面是否还有其他相交面,若有其他相交面,则转至步骤(d2)输入一个其他相交面;(d7)判断基准面中是否还有其他基准面,若有其他基准面,转至步骤(d1)输入一个其他基准面作为参考面;及(d8)输出需要翻面之曲面。如申请专利范围第5项所述之曲面翻面方法,所述步骤(d3)包括以下步骤:(d301)选取该参考面之一条环线;(d302)选取该相交面之一条环线;(d303)判断该参考面环线与该相交面环线是否有相交区域,若没有相交区域,则该参考面环线与该相交面环线不相交,转至步骤(d310);(d304)若有相交区域,则计算该参考面环线与该相交面环线之绝对最近距离及绝对最近点,绝对最近点包括参考面环线之绝对最近点和相交面环线之绝对最近点;(d305)判断绝对最近距离是否大于用户设置之最大公差,若绝对最近距离大于最大公差,则参考面环线与相交面环线不相交,转至步骤(d310);(d306)若绝对最近距离小于等于最大公差,则判断参考面环线绝对最近点在参考面环线上之法线方向与相交面环线绝对最近点在相交面环线上之法线方向是否平行,若不平行,则参考面环线与相交面环线不相交,转至步骤(d310);(d307)若平行,则在参考面环线之绝对最近点附近选取一组环点;(d308)计算该组环点中至相交面环线之相对最近距离与绝对最近距离之差小于指定数值之环点之个数,若该个数小于指定个数,则参考面环线与相交面环线不相交,进入步骤(d310);(d309)若该个数大于等于指定个数,则参考面环线与相交面环线相交,将该参考面环线作为参考面相交环线,将该相交面环线作为相交面相交环线,将参考面环线之绝对最近点作为参考面最近点,将相交面环线之绝对最近点作为相交面最近点,流程结束;(d310)当参考面环线与相交面环线不相交时,判断该相交面是否还有未选取之环线,若该相交面有未选取之环线,则转至步骤(d302)选取该相交面之一条未选取之环线;及(d311)当相交面没有未选取之环线时,判断该参考面是否还有未选取之环线,若该参考面有未选取之环线,则转至步骤(d301)选取该相交面之一条未选取之环线。如申请专利范围第6项所述之曲面翻面方法,所述步骤(d303)之判断方法系:计算参考面环线x轴上最小座标x2、y轴上最小座标y2、z轴上最小座标z2,x轴上最大座标x3、y轴上最大座标y3、z轴上最大座标z3,以及相交面环线x轴上最小座标x4、y轴上最小座标y4、z轴上最小座标z4,x轴上最大座标x5、y轴上最大座标y5、z轴上最大座标z5;若同时满足x3之值在x4与x5之间,y3之值在y4与y5之间,z3之值在z4与z5之间,或者同时满足x2之值在x4与x5之间,y2之值在y4与y5之间,z2之值在z4与z5之间,则参考面环线与相交面环线有相交区域。如申请专利范围第5项所述之曲面翻面方法,所述步骤(d4)之判断方法包括:若该参考面最近点在相交面环线上之法线方向与该相交面最近点在相交面环线上之法线方向相同,且所述参考面非需要翻面之曲面,则该相交面需要翻面,否则该相交面不需要翻面。如申请专利范围第8项所述之曲面翻面方法,所述步骤(d4)之判断方法还包括:若该参考面最近点在相交面环线上之法线方向与该相交面最近点在相交面环线上之法线方向相反,且所述参考面系需要翻面之曲面,则该相交面需要翻面,否则该相交面不需要翻面。
地址 新北市土城区自由街2号