Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Hatched стиль для Shape(Line) (http://www.flasher.ru/forum/showthread.php?t=160943)

_KVA_ 19.07.2011 13:57

Hatched стиль для Shape(Line)
 
Добрый день коллеги,

есть ли возможность в AS3 задать Hatched стиль для Shape(Line)?
В Flash редакторе есть такая возможность (см. картинку) а через AS3 не могу найти как (гуглил).
заранее спасибо за помощь

[IMG]http://img847.**************/img847/4781/hatched.jpg[/IMG]

cv' 19.07.2011 16:16

Попиарю великого silina:
Draw.dashed

silin 19.07.2011 17:46

вот ведь, только там продольные штрихи
но с тем же успехом они могут быть и поперечными
Код AS3:

package 
{
        import flash.display.*;
        import flash.geom.*;
        import silin.geom.Path;// http://silin.su/#AS3
        import silin.geom.PathPoint;
 
        public class HatchedLineDemo extends Sprite
        {
 
                public function HatchedLineDemo():void
                {
                        drawHatchedPath(graphics, [new Point(0, 0), new Point(100, 50),
                                new Point(100, 100), new Point(100,200),new Point(200,200)]);
                }
 
                public function drawHatchedPath(graphics:Graphics, points:Array/*Point*/,
                                spread:Number = 10, decimation:int = 2, thickness:Number = 0, color:uint = 0x0):void
                {
                        var path:Path = new Path(points);
                        graphics.lineStyle(thickness, color);
                        for (var i:int = 0; i < path.length; i+=decimation)
                        {
                                var cP:PathPoint = path.getPathPoint(i);
                                var fi:Number = (cP.rotation + 90) * Math.PI / 180;
                                var dX:Number = spread * Math.cos(fi);
                                var dY:Number = spread * Math.sin(fi);
 
                                graphics.moveTo(cP.x + dX, cP.y + dY);
                                graphics.lineTo(cP.x - dX, cP.y - dY);
                        }
                }
        }
}



Часовой пояс GMT +4, время: 11:54.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.