Actionscript 3 ActionScript读取Sprite';什么是图形?

Actionscript 3 ActionScript读取Sprite';什么是图形?,actionscript-3,graphics,properties,get,sprite,Actionscript 3,Graphics,Properties,Get,Sprite,如何检索精灵的设置图形属性?例如,在下面的代码中,我想获得精灵的颜色,以及它的圆角设置和其他图形属性 var sp:Sprite = new Sprite(); sp.graphics.beginFill(0xFF0000, 0.75); sp.graphics.drawRoundRect(0, 0, 300, 50, 10, 10); sp.graphics.endFill(); addChild(sp); trace(sp.graphics.color); //pseudo trace

如何检索精灵的设置图形属性?例如,在下面的代码中,我想获得精灵的颜色,以及它的圆角设置和其他图形属性

var sp:Sprite = new Sprite();
sp.graphics.beginFill(0xFF0000, 0.75);
sp.graphics.drawRoundRect(0, 0, 300, 50, 10, 10);
sp.graphics.endFill();

addChild(sp);
trace(sp.graphics.color);  //pseudo trace - this doesn't work

我几乎可以肯定这是不可能的。然而,肯定还有其他方法可以做到这一点。对于存储所用值的每个属性,都有一个valueObject怎么样。然后,您可以拥有一个GraphicalDisplayObject,该对象可以从composition继承,也可以通过composition使用。例如:

package {
    class FillVO extends Object {
        public var fill_color:Number = 0xFF0000;
        public var fill_opacity:Number = 0.75;
    }
}

package {
    import FillVO;
    class GraphicalDisplayObject extends Sprite {
        public var fill_vo:FillVO;
        public function beginFill($vo:FillVO) {
            graphics.beginFill($vo.fill_color, $vo.fill_opacity);
        }
        ...
    }
}

package {
    import GraphicalDisplayObject;
    class ObjectWithGraphicalProperties extends Sprite {
        public var gfx:GraphicalDisplayObject;
        public function ObjectWithGraphicalProperties() {
            gfx = new GraphicalDisplayObject();
            addChild(gfx);
        }
        public function beginFill($color:Number, $opactity:Number) {
            var fill_vo:FillVO = new FillVO();
            fill_vo.fill_color = $color;
            fill_vo.fill_opacity = $opacity;
            gfx.beginFill(fill_vo);
        }
        ...
    }
}
然后使用它

var obj:ObjectWithGraphicalProperties = new ObjectWithGraphicalProperties();
addChild(obj);
obj.beginFill(0xffff00, .2);
...
...
trace(obj.gfx.fill_vo.fill_color);
这显然是通过组合实现的,您需要编写额外的代理方法和相应的ValueObject。。。但它应该会起作用。

看起来这与Seniour的方法“类似”-