![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Feb 2014
Сообщений: 57
|
Здравствуйте, появилась проблема есть контейнер, внутри него много объектов с тенями, на контейрнер нужно наложить маску, но так , чтобы на один объект внутри она не действовала, можно ли такое сделать? не охото к каждому объекту применять маску по отдельности, также желательно не вытаскивать объект(который должен быть без маски) из контейнера.
|
|
|||||
|
Регистрация: Feb 2014
Сообщений: 57
|
суть такая, приходит джейсон с объектами, в каждом объекте хранится номер слоя объекта, и я создаю объекты по параметрам, полученным в джейсоне, и рассовываю их на нужный уровень. и в середине допустим у меня есть слой, по которому все объекты должны обрезаться, кроме него самого. этот объект рисуется через drawPath() с задание толщины линии, тоесть если я наложу маску на него по копии его самого, то толщина линии уменьшится вдвое, так как маска обрезает не учитываю толщину линий. а мне надо сохранить линию неизменной. Пока писал придумал два варианта.
1.Отрисовать этот слой в битмапе, и маску сделать битмапой. 2. Сами линии рисовать узкими прямоугольниками. Вытащить нельзя, так как некоторые слои(из контейнера) должны быть выше этого слоя, а некоторые ниже. |
|
|||||
|
может быть так:
разделить объекты на группы (Sprite): - объекты над слоем, к которому не нужно применять маску - объекты под слоем, к которому не нужно применять маску К спрайтам применить alphamask (http://www.flashandmath.com/howtos/alphamask/), а можно и простую маску сложить объекты в контейнер в последовательности : - 1й Sprite с маской - слой без маски - 2й Sprite с маской |
![]() |
![]() |
Часовой пояс GMT +4, время: 07:16. |
|
|
« Предыдущая тема | Следующая тема » |
|
|