loop subdisivion算法

该算法主要涉及对原有顶点的更新和新增顶点的过程。对于边界点,新坐标由原坐标和相邻顶点坐标线性组合得出;若有多个邻接面片,新坐标基于所有邻接顶点的加权平均。对于边界边和内部边,也有特定的新增顶点坐标计算方法。整个过程确保不使用新坐标参与运算,保持在原模型基础上进行变换。
摘要由CSDN通过智能技术生成

算法思想:

  1. 更新原有的顶点

  1. 如果原有顶点为边界点(用这个点查找只能查找到一个三角面片),new_v(顶点的新坐标)=3/4*org_v(这个点的原坐标)+1/4*(v1+v2);v1、v2分别是这个三角面片上另外两个顶点。

  1. 这个顶点有多个邻接面片时,new_v(顶点的新坐标)=(1−nβ)⋅org_v(这个点的原坐标)+β(v1+v2+v3+......),其中v1、v2、v3....是这个点的邻接顶点坐标

  1. 新增顶点(原则是根据每个边去新增顶点)

  1. 当边为边界边时(共享这个边的只有一个三角面片)新增顶点坐标new_v=1/2*(v1 + v2)。其中v1、v2是这条边的两个顶点

  1. 当边为内部边时(共享这个边的有两个三角面片),设内部边的两个端点为v0、v1,相对的两个顶点为v2、v3,则新增加的顶点位置为v = 3/8*(v0 + v1) + 1/8*(v2 + v3)。

  1. 面片结构图例

注意:每次参与计算的都是原模型上点的坐标,没有新的坐标参与运算

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值