Я создаю ограничение между телом и точкой:
var tempConstraint = Constraint.create({pointA: {x: 50, y: 50}, bodyB: body, pointB: {x: x, y: y}, stiffness: 0.1, length: 0, damping: 0.5, });
Точка также перемещается:
tempConstraint.pointA = {x: newX, y: newY};
Проблема в том, что если pointA
медленно перемещается слева направо, например, тело его перетаскивания перемещается в направлении, противоположном тому, каким оно должно быть.Например, если вы повесите карандаш за самый наконечник и начнете перемещать наконечник вправо, нижняя часть карандаша должна слегка повисать слева от верха при его перемещении.Однако, если бы я сделал именно эту вещь с приведенным выше кодом, нижняя часть карандаша переместилась бы вправо, точно так же, как если бы верхняя часть была потянута влево.Не уверен, что я делаю не так, но моя единственная мысль - изменить pointA
- это плохая идея, но я не могу придумать лучшего способа переместить точку ограничения.Будет ли создание столкновения отключено, статическое тело и прикрепление его к нему, а затем перемещение тела будет лучшим способом для этого?