发明名称 |
产品STL模型布尔运算方法 |
摘要 |
本发明提供一种产品STL模型的布尔运算方法,其特征在于构建产品STL模型的动态空间索引结构,基于该结构获取两STL模型相交三角面片,并根据空间三角面片的位置关系,计算相交三角面片的交线段,通过建立离散交线段的动态空间索引结构实现交线段的邻近排序,根据交线对相交三角面片进行细分,以交线为分界线将参与布尔运算的STL模型划分为两个子STL模型,将分割后的子STL模型按照不同的方式组合,实现STL模型的交、并或差布尔运算。实例证明该方法获取交线数据准确,能有效提高产品STL模型的布尔运算效率,并可处理各种复杂型面产品的STL模型的布尔运算。 |
申请公布号 |
CN101510225B |
申请公布日期 |
2011.03.30 |
申请号 |
CN200910019897.1 |
申请日期 |
2009.03.26 |
申请人 |
山东理工大学 |
发明人 |
孙殿柱;李心成;李延瑞;田中朝 |
分类号 |
G06F17/50(2006.01)I;G06T17/00(2006.01)I |
主分类号 |
G06F17/50(2006.01)I |
代理机构 |
|
代理人 |
|
主权项 |
一种产品STL模型的布尔运算方法,其特征在于步骤依次为:1)读产品STL模型数据到存储器中,并为产品STL模型数据建立线性链表存储结构,改进R*‑树得到适合于存储产品STL模型的动态空间索引结构R*S‑树,具体分割方法是将三角面片及索引结点MBR即最小包围矩形统一表示为四维点对象(x,y,z,r),其中x,y,z为MBR中心坐标,r为MBR外接球半径值,通过三角面片集合的聚类分簇,构建产品STL模型动态空间索引结构;2)基于产品STL模型的动态空间索引结构获取交线数据;3)根据交线数据对相交三角面片进行细分;4)将细分后三角面片添加到产品STL模型动态空间索引结构中,重新建立产品STL模型动态空间索引结构,遍历STL模型动态空间索引结构,自适应扩张查找位于交线两侧的三角面片,以交线为分界线将产品STL模型分成两个子STL模型,实现产品STL模型的分割,具体分割方法是:①以产品STL模型中位于交线上的任一三角面片为初始迭代面片;②查找产品STL模型中包含初始迭代面片非交线边的三角面片;③判断查找到的三角面片是否以交线为边界,若不存在交线边界则停止查找交线边方向上的三角面片,查找产品STL模型中包含其它边界的三角面片,执行步骤③;④若两STL模型存在多条交线,提取下一条交线,执行步骤①;⑤将查找到的三角面片从产品STL模型中分割出来,沿交线将产品STL模型分成两个子STL模型;5)根据布尔运算类型,将分割后产品STL模型进行组合,实现产品STL模型的交、并或差布尔运算。 |
地址 |
255086 山东省淄博市高新技术产业开发区高创园D座1012室 |