Масштабирование графического объекта Flex через пользовательский интерфейс

У меня есть базовые формы, созданные с использованием классов гибких примитивов, таких как прямоугольник эллипса и т. Д. Каждая из них добавляется в графический объект.

Теперь я ищу механизм, чтобы выбрать его и масштабировать (как в Photoshop Transform - перетаскиваемые углы и края, изображение масштабируется при перетаскивании)

Есть какие-нибудь решения??

Спасибо


person Saju    schedule 16.04.2012    source источник


Ответы (2)


Ни один из графических примитивов искры не расширяет класс InteractiveObject, поэтому вы не сможете каким-либо образом манипулировать ими напрямую. Вот что, по моему мнению, вы должны сделать (мышление более похоже на ActionScript): создать спрайт, нарисовать нужную вам фигуру с помощью API рисования AS3, затем добавить дочернюю форму к вашему спрайту вместе с дополнительными небольшими спрайтами, которые отмечают области, где вы должны быть в состоянии взаимодействовать с вашей графикой. Например, если вы хотите масштабировать свой основной спрайт при захвате угла, просто добавьте небольшой спрайт в область угла и прослушайте событие mouseDown на этом маленьком спрайте (вместе с событием mouseMove, чтобы определить, насколько должен измениться размер вашего основного спрайта) .

Возможно, есть какой-то более простой способ с некоторыми преимуществами Flex, но, как я уже сказал, это то, что я бы сделал с чистым AS.

person Varnius    schedule 16.04.2012
comment
Ну я просто думаю, что уже может быть какая-то кастомная обертка или скин, написанный кем-то для облегчения задачи ресайза и перетаскивания компов. Вот кое-что, что может вам помочь. - person Varnius; 17.04.2012

Взгляните на это: http://code.google.com/p/transform-tool/

person Alfonso Rubalcava    schedule 23.08.2012