![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Nov 2010
Сообщений: 23
|
Добрый день.
var p1:Point = new Point(); var p:Point = new Point(); var p4:Point = new Point(); var matr:Matrix = new Matrix(); matr.createGradientBox(200, 40, 0, 0, 0); draw.lineGradientStyle(GradientType.LINEAR, [0xFF0000, 0x00FF00, 0x0000FF], [1, 1], [0, 128, 255], matr); // start point p1.x = 0; p1.y = 0; // end point p4.x = -800; p4.y = -800; points = [p1]; for (var j:int = 0; j < 2; j++) { p = new Point(); p.x = -78 * j / 0,1; // для примера (в оригинале статический класс генерит псевдослучайное число) p.y = -25 * j / 0,4; // points.push(p); } points.push(p4); var bezier:BezierSegment = new BezierSegment(points[1], points[2], points[3], points[4]); draw.moveTo(p1.x, p1.y); for (var t:Number = .01; t < 1.01 ; t+=.01){ var val:Point = bezier.getValue(t); draw.lineTo(val.x,val.y); } Спасибо. |
|
|||||
|
У вас при задании альфы, всего два значения, [1,1], а должно быть три [1,1,1], ведь цвета тоже три.
Если что-то не получается, то вот рабочий пример: var points:Array = [new Point(0, 0), new Point(100, 600), new Point(300, 0), new Point(800, 600)]; var bezier:BezierSegment = new BezierSegment(points[0], points[1], points[2], points[3]); var matrix:Matrix = new Matrix(); matrix.createGradientBox(800, 600); graphics.lineStyle(5); graphics.lineGradientStyle(GradientType.LINEAR, [0xFF0000,0x00FF00,0x0000FF], [1,1, 1], [0, 128,255], matrix); graphics.moveTo(0, 0); for (var i:int = 0; i < 100; i++) { var inc:Number = 1 / 100; var currentPoint:Point = bezier.getValue(inc * i); graphics.lineTo(currentPoint.x,currentPoint.y); } Последний раз редактировалось samana; 04.02.2011 в 15:46. |
|
|||||
|
Регистрация: Nov 2010
Сообщений: 23
|
Огромное спасобо.
|
![]() |
![]() |
Часовой пояс GMT +4, время: 23:12. |
|
|
« Предыдущая тема | Следующая тема » |
|
|