Как рисовать линию на растровом изображении в Stage3D с помощью Agal? Может ли кто-нибудь представить пример кода?Как нарисовать линию на растровом изображении в Stage3D с помощью Agal?
1
A
ответ
1
Недавно я написал простую библиотеку для рисования линий на Stage3D.
Это называется Zebroid, https://github.com/luwes/Zebroid
Zebroid еще не поддерживает линейные пробки или суставы.
2
Если вы используете Старлинг, вы можете попробовать это:
/**
* Class Line
* @author Leandro Barreto 2012
* @version 1.0
**/
package starling.utils
{
import starling.display.Quad;
import starling.display.Sprite;
public class Line extends Sprite
{
private var baseQuad:Quad;
private var _thickness:Number = 1;
private var _color:uint = 0x000000;
public function Line()
{
baseQuad = new Quad(1, _thickness, _color);
addChild(baseQuad);
}
public function lineTo(toX:int, toY:int):void
{
baseQuad.width = Math.round(Math.sqrt((toX*toX)+(toY*toY)));
baseQuad.rotation = Math.atan2(toY, toX);
}
public function set thickness(t:Number):void
{
var currentRotation:Number = baseQuad.rotation;
baseQuad.rotation = 0;
baseQuad.height = _thickness = t;
baseQuad.rotation = currentRotation;
}
public function get thickness():Number
{
return _thickness;
}
public function set color(c:uint):void
{
baseQuad.color = _color = c;
}
public function get color():uint
{
return _color;
}
}
}
Кто-то предложил на форумах Старлинга, которые мы создаем класс Line, который всасывает несколько каре, соединяющих две точки. В этом учебнике показано, как создавать полигоны с использованием гал шейдеров:
http://wiki.starling-framework.org/manual/custom_display_objects