connect near points houdini

int max_pts = chi("max_pts");
float max_rai = chf("max_rai");

int muscle_pts = npoints(1);

for(int i = 0; i<muscle_pts; i++)
{
    float SpringMask = point(1, "SpringMask", i);
    if (SpringMask > chf("SpringMask_Thr") )
    {
        vector muscle_pos = point(1, "P", i);
        int bone_pts[] =  nearpoints(2, muscle_pos, max_rai, max_pts);
        foreach(int bone_pt; bone_pts)
        {
            int muscle_spring_pt = addpoint(0, muscle_pos);
            // setpointattrib(0, "muscle_pt_index", muscle_spring_pt, i);
            
            vector bone_pos = point(2, "P", bone_pt);
            int bone_spring_pt = addpoint(0, bone_pos);
            // setpointattrib(0, "bone_pt_index", bone_spring_pt, bone_pt);
            
            int spring = addprim(0, "polyline", muscle_spring_pt, bone_spring_pt);
            dict rel;
            rel["muscle_pt_index"] = i;
            rel["bone_pt_index"] = bone_pt;
            setprimattrib(0, "extraSpring", spring, rel);
        }
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值