Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Как задать позицию центра мувиклипа при его программном создании? (http://www.flasher.ru/forum/showthread.php?t=128928)

Огнеметчик 20.08.2009 17:18

Как задать позицию центра мувиклипа при его программном создании?
 
Если создавать мувиклип через Flash IDE, то можно указать точку, которая будет иметь координаты (0; 0): левый верхний угол, центр и т.п. А как указать в каком месте находятся координаты (0; 0) мувиклипа создаваемого программно?

Gaen 20.08.2009 17:57

Эта точка всегда будет находиться в (0, 0) :)
Всё зависит от того, как вы разместите содержимое внутри мувика относительно этой точки.

Огнеметчик 20.08.2009 18:25

Хмм... Я программно создаю мувиклип с именем, например, container, потом загружаю из внешнего файла картинку и вставляю ее в контейнер:
Код AS3:

container.addChild(loader.content);

теперь я вращаю контейнер (в цикле container.rotation += 1) и картинка вращается вокруг левого верхнего угла, а надо чтобы вращалась вокруг своего центра.

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

Gaen 20.08.2009 18:30

Именно так.

Огнеметчик 20.08.2009 18:42

Ясно, спасибо, буду экспериментировать.

Skank 24.08.2009 15:01

Есть один способ - я так понимаю тебе нужно чтобы мувик крутился по кругу - у меня было такая проблема - я написал код раскрутки вокруг произовльной точки:

Код AS3:

public static function relativeRotate(download:MovieClip, angle:Number,point:Point):void
                {
                      var mtrx:Matrix=download.transform.matrix;
                      mtrx.tx -= point.x;
                    mtrx.ty -= point.y;
                      mtrx.rotate(angle * (Math.PI / 180));
                      mtrx.tx += point.x;
                      mtrx.ty += point.y;
                      download.transform.matrix=mtrx;
                }



Часовой пояс GMT +4, время: 21:15.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.