PDA

Просмотр полной версии : Программное изменение центра вращения


Oreanor
10.05.2006, 13:37
Я нашел один способ, но довольно извратный. Для этого нужно символ запихивать еще в один контейнер, и смещать на нужную дельту - символ влево, а контейнер вправо, например. Ничего не мелькает, но сам подход мне не очень нравится.

Можно ли как-то программно менять центр вращения мувика? Никаких специальных свойств для этого похоже не предусмотрено.

iNils
10.05.2006, 13:42
Перерасчитывать координаты.

Oreanor
10.05.2006, 13:49
мне кажется ты то же самое по сути написал, нет?

iNils
10.05.2006, 13:52
Тебе кажется, не нужно еще один контейнер, просто перерасчитывать координаты.

iNils
10.05.2006, 13:58
Если ты хочешь просто программно указать новый центр вращения, а потом просто вертеть, то нельзя.

Oreanor
10.05.2006, 14:05
Если ты хочешь просто программно указать новый центр вращения, а потом просто вертеть, то нельзя.


я так и думал, жаль.

а что ты имеешь в виду - перерасчитывать координаты? координаты чего относительно чего?
имхо, чтобы использовать _rotation для поворота - по-любому нужен контейнер для мувика.

я расскажу поподробнее, а то так трудно понять, что конкретно надо.
есть балка на двух точечных опорах. когда опоры перемещают, балка может вращаться (вокруг точки опоры, разумеется). здесь я не нашел решения лучше, чем запихнуть балку в контейнер и смещать контейнер и саму балку в противоположных направлениях.

iNils
10.05.2006, 15:26
Еще можно использьвать localToGlobal, но все равно на каждом этапе делать новый перерасчет.
Я так делал в игре http://www.tusovka.ru/interactive/fun/?issue=1075
обрати внимание на нижнию бочку, в зависимости то угла наклона, у нее меняется точка опоры (центр вращения)