def align_to_curve(xforms, curve):
curve_fn = to_curve_fn(curve)
num_xforms = len(xforms)
param_step = curve_fn.numSpans / float(num_xforms - 1)
for i, xform in enumerate(xforms):
param = i * param_step
normal = curve_fn.normal(param, om.MSpace.kWorld)
tangent = -curve_fn.tangent(param, om.MSpace.kWorld)
position = curve_fn.getPointAtParam(param, om.MSpace.kWorld)
matrix = build_matrix(normal, tangent, position)
cmds.xform(xform, ws=True, matrix=matrix)
评论列表
文章目录