![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Sep 2002
Сообщений: 202
|
Приветствую
Вопрос такой: Я нарисовал некий контур используя lineTo и moveTo команды Как мне объявить этот контур маской для некоторого слоя? Можно маленький пример? |
|
|||||
|
Регистрация: Sep 2002
Сообщений: 202
|
что - линии совсем не могут быть масками!!!
а что же мне сделать - я рисую линии через массив с вершинами |
|
|||||
// рисуем, заливаем
this.createEmptyMovieClip("shape", 1);
shape.lineStyle(1, 0x000000, 100);
shape.beginFill(0xFF0000, 100);//красная заливка
shape.moveTo(100, 100);
shape.lineTo(200, 56);
shape.lineTo(200, 25);
shape.lineTo(100, 200);
//еще как-нибудь
shape.lineTo(100, 100);
shape.endFill();
//и, как писал iNils, назаначаем маску (я не между строк смотрел:))
mc.setMask(shape);
//Все, проверил, работает - сам удивлен:)
//Если же нужно именно по контуру (без заполнения не
//получается, проверил), т.е. обводкой без заполнения - вспоминай теорию построения
//фигур в 2-мерной плоскости, рисуй 2 контура, отстоящие на опр. значение,
//заполняй промежкток и т.д. это в полярных координатах легче:), чем в прямоугольных
Последний раз редактировалось Ventur; 20.06.2006 в 01:15. |
|
|||||
|
Регистрация: Sep 2002
Сообщений: 202
|
ну проще тогда рисовать не линию а прямугольник который чуть шире этой линии
вот только скорость просядет или отрисовку как-нить оптимизировать можно? |
|
|||||
|
Я думал еще про дублирование клипов по координатам контура, но маску потом несколькими клипами назначить проблематично. Надо поэксперементировать.
|
|
|||||
this.createEmptyMovieClip("square_mc", 1);
square_mc.lineStyle(5, 0x000000, 100);
square_mc.beginFill(0xFF0000, 100);
square_mc.moveTo(100, 100);
square_mc.lineTo(200, 100);
square_mc.lineTo(200, 200);
square_mc.lineTo(100, 200);
square_mc.lineTo(100, 100);
square_mc.moveTo(110, 110);
square_mc.lineTo(210, 110);
square_mc.lineTo(210, 210);
square_mc.lineTo(110, 210);
square_mc.lineTo(110, 110);
square_mc.endFill();
//контуром, нет времени эксперементировать
//пробуй
|
![]() |
![]() |
Часовой пояс GMT +4, время: 15:08. |
|
|
« Предыдущая тема | Следующая тема » |
|
|