PDA

Просмотр полной версии : Передвижение мувиков


vecalion
17.05.2006, 16:56
Добрый день,

имеется следующая конструкция:

Container:MovieClip
|- Pic1:MovieClip
|- Pic2:MovieClip
|- Pic3:MovieClip
|- Pic4:MovieClip

То есть в Container вложены 4 клипа. Pic1, Pic2, Pic3 и Pic4 имеют одинаковую форму квадратов, и составлены друг к другу в форме большого квадрата.

Все четыре квадратных мувика привязаны к курсору мышки и, при нажатой кнопке, передвигаются вместе с ним. Передвигается не Container!! А именно 4 клипа внутри него.

Все работает хорошо, пока не возникает необходимость масштабирования. Масштабируется Container (_xscale && _yscale), причем процент масштабирования может быть любой.

После масштабирования, при передвижении иногда становятся видны стыки между 4-мя мувиками.

Полагаю, что это происходит из-за округления координат MovieClip'ов. Как с этим можно бороться?

Не знаю насколько понятно описал проблему, - на всякий случай приаттачил пару скриншотов (1.jpg - как должно быть, 2.jpg - что бывает и с чем борюсь).

iNils
17.05.2006, 17:09
Так и должно быть.
Скажем внутри контейнера есть квадраты под такими номерами:
1 2
3 4
Координаты квадрата 2 - x:99, y:99, для 1-го это будет x:0, y:0
Ты делаешь маштабирование на 105%. Какими становятся координаты 2-го квадрата относительно рута? x:103.95, y:103.95. То есть не целыми и тут начинает работать антиалисинг для вектора, от сюда и полосы.

vecalion
17.05.2006, 17:24
Согласен, однако для некоторых дробных относительно рута позиций полос не наблюдается. В конечном же счете - на сколько не масштабируй, всё равно всё округляется до пикселей. Возможно есть способ управлять антиалиасингом?

iNils
17.05.2006, 17:34
В конечном же счете - на сколько не масштабируй, всё равно всё округляется до пикселей.Да ну? :)

Nirth
17.05.2006, 17:38
Автор наверное имел ввиду, что монитор не может отображать пол\четверть\треть пикселя, пиксель либо активен, либо нет

iNils
17.05.2006, 17:42
Автор наверное имел ввиду, что монитор не может отображать пол\четверть\треть пикселя, пиксель либо активен, либо нет
А я про координаты вектора.

vecalion
17.05.2006, 18:09
А я про координаты вектора.

А я имел ввиду именно экранные пиксели. Только что нарисовал jpg 99х99 пикселей, загнал в мувик и программно проскейлил на разные значения. В результате в любом масштабе картинка имела четкую границу.
Тому же мувику без скейла - задал дробную позицию по _x и сразу вылезли эти линии. То есть они появляются из-за позиции, а не из-за масштаба (однако дробные координаты появляются из-за масштаба).

iNils
17.05.2006, 18:37
То есть они появляются из-за позиции, а не из-за масштаба (однако дробные координаты появляются из-за масштаба).
об это тебе и говорилось