![]() |
Фигурная обрезка битмапом по маске
1. Картинку которую нужно фигурно обрезать делаю битмапом.
2. Фигуру маски по которой нужного обрезать картинку делаю битмапом. 3. Создаю пустые клипы-контейнеры для этих битмапов. Для каждого свой. 4. В эти клипы помещаю по битмапу. В один клип картинку. Во второй маску. 5. Клип с маской располагаем над клипом с картинкой и задаём маской. 6. Но обрезка происходит не по фигуре маски, а по прямоугольнику битмапа который сделали из клипа с маской. Подскажите, как сделать фигурную обрезку изображения посредством битмапа, так, что-бы в результате осталась видимая обасть заданая маской. И что-бы в результате эта получившаяся фигурная видимая область была отдельным клипом, который бы не содержал прозрачной прямоугольной области. Т.е. если к этому клипу применить startDrag, то взять его можно было только за видимую фигурную область, оставшуюся после обрезки по маске. А не за прямоугольник с прозрачностью в котором находится оставшаяся фигурная область после задания маски. |
Цитата:
|
Т.е. Сделать всё тоже самое, только не через битмап, а через шейп?
|
т.е вместо картинки с прозрачными областями, используйте векторный шейп, внутри мувика, который хотите сделать маской.
|
Сейчас объясню подробнее.
Есть два одинаковых изображения. Пик1 и Пик2. На изображении Пик1 четырьмя кликами выделяется некая произвольная область. По координатам этих кликов отрисовывается четырёхугольник этой выделенной области. Этот четырёхугольник выделенной области должен стать маской, по которой обрежется изображение Пик2. В результате должно получится следующее: мы имеем изображение Пик1, на котором видим нашу выделенную область. И фрагмент изображения Пик2, оставшийся после обрезки по области выделения. Но этот фрагмент не должен содержать прозрачности. А должен обрезаться именно по области выделения, для того, что-бы с ним можно было дальше производить трансформации. |
Рисуете шейп-маску mask по координатам вершин четырехугольника. потом
Код AS1/AS2:
|
dimarik, не совсем понимаю, что-такое шейп-маска. Вы имеете в виду использовать класс Shape для рисования маски? Или это что-то другое? Поясните пожалуйста.
|
имелось виду пользоваться графическими API такими как lineTo, curveTo для отрисовки формы.
|
Собственно таким образом и создаётся выделенная область. А.а.а.а... Кажется понял... Нужно отрисовать точно такуюже область, по тем-же координатам, только уже в мувике с Пик2 и назначить его маской для Пик2. Я верно понял?
|
ага :)
|
Не совсем. Маска - это отдельный mc.
вроде того Код AS1/AS2:
|
alekslitvinenk, dimarik, спасибо. Пошёл рисовать.
|
можно и битмапами :)
Код AS1/AS2:
|
Привет, я новичок в AS3, только начала изучать, и начала именно с 3-го. Так что прошу не бить сильно. А вопрос такой, точнее просьба направить. Мне нужен этот код, который написал Mnilionic, только перевести в AS3.
Вот что я сделала: Код AS3:
Цитата:
Пожалуйста, помогите разобраться. Спасибо! |
| Часовой пояс GMT +4, время: 07:22. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.