首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Agal在Stage3D中的位图上绘制线条?

如何使用Agal在Stage3D中的位图上绘制线条?
EN

Stack Overflow用户
提问于 2012-05-01 02:08:29
回答 2查看 2K关注 0票数 1

如何使用Agal在Stage3D中的位图上绘制直线?有人能提供一个代码示例吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-21 15:15:09

我最近写了一个简单的库来在Stage3D上画线。

它叫斑马,https://github.com/luwes/Zebroid

Zebroid还不支持线帽或接缝。

票数 1
EN

Stack Overflow用户

发布于 2012-05-16 23:30:11

如果你使用Starling,你可以尝试这样做:

代码语言:javascript
复制
/**
 * 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;
        }
    }
}

有人在Starling论坛上建议我们创建一个Line类,它绘制几个连接两个点的四边形。本教程介绍如何使用AGAL为着色器创建多边形:

http://wiki.starling-framework.org/manual/custom_display_objects

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10388458

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档