Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Игнорирование размеров объекта (http://www.flasher.ru/forum/showthread.php?t=148922)

cv' 14.01.2011 18:26

Игнорирование размеров объекта
 
Доброго, вам, уважаемые flash-самураи!

Есть ли какой-либо способ игнорировать размеры объекта (мувиклипа) при расчете размеров его родителей?

Код AS1/AS2:

=)


КорДум 14.01.2011 19:35

Ну, как бы, размеры родителя в таком случае будут равны 0. Потому что родитель без содержимого (объектов) пустой. Некорректный вопрос.
Вам нужно считать размеры контейнера перед добавлением в него других объектов. Или можно поизвращаться: внутренний объект перетащить кодом в точку (0, 0), сделать ему _xscale = _yscale = 0, посчитать размеры получившегося, затем вернуть внутреннему объекту нужные координаты и масштаб ;)

cv' 14.01.2011 19:52

Пример:

Есть контейнер А
В нем есть Буква Б
И тень от нее В
Хитзона Г
Красивая рамочка Д
Элемент дизайна еще один Е

Как посчитать размер контейнера А игнорируя только тень В.

Допустим таких вот теней разбросано по сцене куча, без всякой системы. Но все они являются экземплярами одного класса.

Можно ли как-то сделать типа

Код AS1/AS2:

this.ignoreBounds = true

Чтобы именно объекты этого класса не просчитывались?

КорДум 14.01.2011 20:04

Сделайте у класса B метод hide(), в нем запоминайте старые координаты и масштаб, меняйте все в какую-нибудь точку, где есть другая графика от экземпляров других классов, меняйте масштаб до 0. Затем считайте размер контейнера, вызывайте метод show(), который поставит все в нужные места и вернет размеры. Извращения да и только. Но других вариантов как бы и нет. И да, _visible скроет только визуально объект и уберет его из перерисовки, но он останется в контейнере и будет занимать место.


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

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