Я использую COCOS2D для Android. Я хочу повернуть прямоугольный спрайт и масштабировать его до разных высот, но две его вершины находятся в фиксированном месте. Я имею в виду, что из четырех вершин прямоугольника я хочу, чтобы только две вершины перемещались в разные точки и даже масштабировали прямоугольник до разной длины. Аналогичный пример для различной длины: термометр, где уровень прямоугольной ртути поднимается & вниз, фиксируя две вершины внизу.Вращение и масштабирование изображения спрайта в COCOS2D Android
ответ
Для этого переместите anchorPoint
на край, который вы хотите сохранить постоянным. Допустим, вы переместите свой anchorPoint
в нижний край вашего спрайта с термометром, когда вы его масштабируете, только верхний край будет двигаться. Значение anchorPoint
имеет значение поплавка 0..1, соответствующее 0-100% от размеров спрайтов.
Обратите внимание, что это повлияет на ваш position
, возможно, вам потребуется настроить на 1/2 ширины спрайтов (или высоту, в зависимости от того, как вы ее настроили). anchorPoint
вашего спрайта находится там, где находится ваш спрайт position
. Таким образом, по умолчанию anchorPoint
находится по адресу (0,5, 0,5), поэтому ваш спрайт находится в центре, где бы вы его ни разместили. Если вы должны были изменить anchorPoint
к (0,5, 0), то спрайт будет горизонтально по центру, но в нижней части спрайта будет совпадать с везде, где вы установите его position
быть, и она будет масштабироваться от точки привязки.
Эти ссылки будут также оказаться бесценным для вас:
http://www.qcmat.com/understanding-anchorpoint-in-cocos2d/
http://cocos2d-central.com/topic/436-position-vs-anchorpoint/
Спасибо Authman ... – Manjunath
Удачи вам с вашим приложением =] –
Ах! Большое спасибо... – Manjunath