Координаты X, Y, кажется, генерируются из середины объекта, а не слева вверху во вспышке - PullRequest
0 голосов
/ 05 июня 2009

Я конвертирую созданный мной в AJAX редактор помещений, чтобы пользователи могли перемещать мебель по своему усмотрению, но у меня возникают некоторые проблемы с координатами x, y. С настройкой Javascript / AJAX я записал координаты X, Y изображения мебели, и он работал нормально в верхнем левом углу изображения. Однако, теперь, пытаясь заставить его работать и загружать те же настройки во Flash вместо AJAX, размещение все отключено. Похоже, что координаты X, Y, которые мне возвращаются, находятся в центре изображения, а не в верхнем левом углу (если я перетаскиваю что-то в верхний левый угол «комнаты», это означает, что X & Y является половиной ширина и высота).

Любая причина, почему это будет? Я, как под впечатлением, координаты X, Y работали одинаково и в Javascript, и во Flash.

Ответы [ 4 ]

1 голос
/ 06 июня 2009

Я бы предположил, что вы делаете все это с помощью Flash IDE, потому что, если бы вы загрузили все это во время выполнения с помощью чисто кода, вы бы изо всех сил пытались заставить их центрироваться, указав x и y, которые это половина его высоты и ширины. Все это заставляет меня поверить, что вы поместили их в мувиклипы, созданные с центрированной регистрацией.

Вам необходимо проверить x, y растровых изображений, которые вы используете в качестве мебели. Убедитесь, что они находятся на 0,0 внутри своих родительских видеоклипов. Тогда вы просто перемещаете родителя. Если ваши растровые изображения имеют отрицательные значения, равные половине их ширины и высоты, в качестве значений x и y, это будет центрировать ваше растровое изображение в середине мувиклипа / спрайта, в отличие от регистрации в верхнем левом углу.

Если вы создали видеоклип с центрированной регистрацией, вам не нужно уничтожать его, создавать новый с другой регистрацией; Просто откройте мувиклип и установите растровое изображение / актив, который находится внутри, в положение X: 0, Y: 0, затем выйдите изнутри мувиклипа, и один раз снаружи вы должны будете соответствующим образом настроить его.

1 голос
/ 05 июня 2009

Убедитесь, что точка регистрации каждого объекта находится в верхнем левом углу, а не в его центре.

Дополнительная информация:

0 голосов
/ 30 июня 2009
0 голосов
/ 05 июня 2009

Разумно ли в качестве обходного пути просто перевести местоположение с использованием высоты и ширины объекта. Например, скажем, объект был 100 на 100 пикселей. Если вы переместите его в верхний левый угол, координаты будут иметь значение 50x50y. При импорте вы можете просто добавить половину ширины и высоты к X и Y соответственно. На экспорт просто вычтите половину. Это, конечно, при условии, что точка регистрации всегда находится посередине.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...