|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Регистрация: Jul 2007
Сообщений: 8
|
Узнать размеры видимой части мувиклипа
Здрасьте.
Дано: контейнер, внутри него творится вакханалия: множество довольно хаотично разбросанных mc, с перекрытиями, наезжаниями, меняющимися координатами и свойствами видимости. Вопрос: как узнать ширину контейнера без учета невидимых вложенных мувиков? Тестовый пример: MovieClip test1, состоит из one и two trace (test1.width); //200 test1.two.visible = false; trace (test1.width); //200 test1.one.visible = false; trace (test1.width); //200 test1.visible = false; trace (test1.width); //200 Спасибо. |
|
|||||
Регистрация: Nov 2010
Сообщений: 150
|
Попробуй
http://help.adobe.com/ru_RU/FlashPla...html#getRect() http://help.adobe.com/ru_RU/FlashPla...ml#getBounds() |
|
|||||
Регистрация: Jul 2007
Сообщений: 8
|
К сожалению, тоже не реагирует на видимость.
|
|
|||||
От того, что вы делаете объект не видимым его размер не изменяется. Я показываю вам фотографию 10х15 и убираю, какой размер у фотографии? 10х15.
__________________
Gamedev != Gaming (http://twitter.com/#!/GenzoDev). Don't forget to [+] if it works. |
|
|||||
можно срисовать все в прозрачную битмапу и посмотреть что стало непрозрачным
public class Main extends Sprite { public function Main():void { var s:Sprite = new Sprite(); s.graphics.beginFill(0); s.graphics.drawRect(0, 0, 80, 60); s.x = 100; s.y = 200; trace( "visibleBounds : " + getVisibleBounds());//(x=0, y=0, w=0, h=0) addChild(s); trace( "visibleBounds : " + getVisibleBounds());//(x=100, y=200, w=80, h=60) } private function getVisibleBounds():Rectangle { var bmd:BitmapData = new BitmapData(stage.stageWidth, stage.stageHeight, true, 0); bmd.draw(this); var rec:Rectangle = bmd.getColorBoundsRect(0xFF000000, 0, false); bmd.dispose(); return rec; } } |
Часовой пояс GMT +4, время: 10:49. |
|
« Предыдущая тема | Следующая тема » |
Теги |
visible , width , видимость , размеры |
|
|