あらかじめcurve1とlocator1を用意してから実行。
次のコードは、locator1からcurve1に一番近いポイントのParametric Length値を取得します。
import pymel.core as pm
import maya.api.OpenMaya as om
lct = pm.PyNode("locator1")
pt = om.MPoint(lct.getTranslation())
sel = om.MSelectionList()
sel.add("curve1")
path = sel.getDagPath(0)
p,pl = crv.closestPoint(pt)
print pl
Attach to Motion Pathで、Parametric Lengthにチェックを入れて出てきた値を入れるとそこにコンストできます。
しかし、コードが長いなぁ…。
次のコードは、locator1からcurve1に一番近いポイントのParametric Length値を取得します。
import pymel.core as pm
import maya.api.OpenMaya as om
lct = pm.PyNode("locator1")
pt = om.MPoint(lct.getTranslation())
sel = om.MSelectionList()
sel.add("curve1")
path = sel.getDagPath(0)
crv = om.MFnNurbsCurve(path)
p,pl = crv.closestPoint(pt)
print pl
Attach to Motion Pathで、Parametric Lengthにチェックを入れて出てきた値を入れるとそこにコンストできます。
しかし、コードが長いなぁ…。
コメント