[发明专利]一种多层级B样条曲线的编辑方法有效
申请号: | 202010148051.4 | 申请日: | 2020-03-05 |
公开(公告)号: | CN111325815B | 公开(公告)日: | 2023-05-02 |
发明(设计)人: | 张赐;孙伟;胡雨森 | 申请(专利权)人: | 成都威爱新经济技术研究院有限公司 |
主分类号: | G06T11/20 | 分类号: | G06T11/20 |
代理公司: | 北京正华智诚专利代理事务所(普通合伙) 11870 | 代理人: | 李梦蝶 |
地址: | 610000 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 多层 曲线 编辑 方法 | ||
本发明公开了一种多层级B样条曲线的编辑方法,其包括以下步骤:S1、获取B样条曲线的初始状态;S2、通过最小旋转坐标系获取各个发生偏移的点对应的偏移曲线;S3、将B样条曲线的初始状态和第1到第N次编辑得到的每个偏移曲线相加,得到第N次编辑后的B样条曲线,即N层级B样条曲线;S4、判断是否返回到第n次编辑得到的B样条曲线,若是则进入步骤S5,否则输出当前N层级B样条曲线并结束;S5、在N层级B样条曲线的基础上去掉第n+1次编辑至第N次编辑得到的所有偏移曲线,即得到n层级B样条曲线。本方法解决了层级B样条曲线各层级编辑前的曲线状态和编辑后的曲线状态之间无法方便地来回切换的问题。
技术领域
本发明涉及计算机领域,具体涉及一种多层级B样条曲线的编辑方法。
背景技术
B-Spline曲线(B样条曲线)在计算机辅助设计(CAD)中被广泛地使用。它的优点是能在保持曲线次数不变的情况下,如3次B-Spline曲线,通过对Knot Vector(节点向量)细分化,增加曲线的控制点,来实现对曲线更加细节上的灵活编辑。如Les Piegl WayneTiller所作的《The NURBS Book》一书中,详细地描述了B-Spline曲线的定义、算法以及如何进行节点的细分化。但是,在B-Spline曲线被多次编辑修改后,编辑前的曲线状态和编辑后的曲线状态之间无法方便地来回切换。
如图4所示,图4(a)为原曲线,图4(b)为第三次编辑后的形状,图4(c)返回原曲线并将曲线最左端点往上移动编辑后的形状,这时再返回第三次编辑后的形状时希望得到的结果为图4(e)所展示的形状,但实际形状是图4(d)的形状,即在现有技术的情况下,编辑前的曲线状态和编辑后的曲线状态之间无法方便地来回切换。
发明内容
针对现有技术中的上述不足,本发明提供的一种多层级B样条曲线的编辑方法解决了编辑前的曲线状态和编辑后的曲线状态之间无法方便地来回切换的问题。
为了达到上述发明目的,本发明采用的技术方案为:
提供一种多层级B样条曲线的编辑方法,其包括以下步骤:
S1、获取B样条曲线的初始状态;
S2、对于每一次编辑B样条曲线,通过最小旋转坐标系获取各个发生偏移的点在当前编辑时出现的偏移量,并将其线性组合成偏移曲线;
S3、将B样条曲线的初始状态和第1到第N次编辑得到的每个偏移曲线相加,得到第N次编辑后的B样条曲线,即N层级B样条曲线;
S4、判断是否返回到第n次编辑得到的B样条曲线,若是则进入步骤S5,否则输出当前N层级B样条曲线,完成多层级B样条曲线编辑;其中0≤nN;
S5、在N层级B样条曲线的基础上去掉第n+1次编辑至第N次编辑得到的所有偏移曲线,即得到n层级B样条曲线。
进一步地,步骤S2中通过最小旋转坐标系获取各个发生偏移的点在当前编辑时出现的偏移量的具体方法包括以下子步骤:
S2-1、通过node查询法查找要编辑的曲线上点p最近的坐标系
S2-2、根据公式:
获取点p最近的坐标系在第m次编辑时的偏移量其中[qx,qy,qz]为坐标系的坐标原点在m-1层级的曲线上的位置;为坐标系本身;v为点p在世界坐标系下的偏移;v'为点p在原点坐标为[qx,qy,qz]、坐标系参数为的坐标系下的偏移。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都威爱新经济技术研究院有限公司,未经成都威爱新经济技术研究院有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010148051.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种土壤修复装置和修复方法
- 下一篇:视频插帧方法及相关装置