houdini 生成中心线:Find the center of a deforming tube

47 篇文章 28 订阅

技术来源:Find the center of a deforming tube with Vex

求中心线大概有几种方法:

不同方法各有优缺点,可根据模型特点使用

在这里插入图片描述

思路:

  • 1把模型往里缩,变得很细,圆滑
    在这里插入图片描述
  • 2,转成点,用fuse焊接附近点
    在这里插入图片描述
  • 3用connectAdjacentPieces根据距离连成线,最后优化下
    在这里插入图片描述

如何把模型往里变细?

在这里插入图片描述

  • 使用polyExtrude把模型往外挤出一点点(这里只是为了不要和旧模型重合)
  • 使用ray节点映射,这里关键一点是要反向映射(目的是模型前后对调)在这里插入图片描述
  • 最后把两个模型进行融合,由于模型在上面被投射到了管子的另一端,前端后端一融合就到物体中心,表达式:lerp(self, @opinput1_P, 0.5)
    在这里插入图片描述

把点连线?

使用connectAdjacentPieces连接,搜索半径调大,最大搜索点设为3
在这里插入图片描述

潜在bug?

连线这里因为点顺序不对,根据距离相近点进行连接,也就可能出现一些意外。如果管子的距离挨得太近,就可能错乱,如下图
在这里插入图片描述
我的解决方案是先对管子做个优化,通过软选择移动把挨着的管子移开
在这里插入图片描述
这样跑流程就正常了
在这里插入图片描述
最后在pointDeform变回来
在这里插入图片描述
在这里插入图片描述
有动画的管子也可以用pointdefom跑

hip:https://pan.baidu.com/s/1JXVG27aj34_LfH8v0w4Rmg
提取码:wway


--END--
  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值