Egret 2D(2)--基本概念

 

显示对象的属性

alpha:透明度
width:宽度
height:高度
rotation:旋转角度
scaleX:横向缩放
scaleY:纵向缩放
skewX:横向斜切
skewY:纵向斜切
visible:是否可见
x:X轴坐标值
y:Y轴坐标值
anchorOffsetX:对象绝对锚点X
anchorOffsetY:对象绝对锚点Y
name:类似标识

核心显示类

描述
DisplayObject 显示对象基类,所有显示对象均继承自此类
Bitmap 位图,用来显示图片
Shape 用来显示矢量图,可以使用其中的方法绘制矢量图形
TextField 文本类
BitmapText 位图文本类
DisplayObjectContainer 显示对象容器接口,所有显示对象容器均实现此接口
Sprite 带有矢量绘制功能的显示容器
Stage 舞台类

自定义显示对象类

自定义显示对象类需要继承自 DisplayObject的具体子类,例如Shape或者TextField。

class MyGrid extends egret.Shape{
    public constructor(){
        super();
        this.drawGrid();
    }
    private drawGrid(){
        this.graphics.beginFill( 0x0000ff );
        this.graphics.drawRect( 0, 0, 50,50 );
        this.graphics.endFill();
        this.graphics.beginFill( 0x0000ff );
        this.graphics.drawRect( 50, 50, 50, 50);
        this.graphics.endFill();
        this.graphics.beginFill( 0xff0000 );
        this.graphics.drawRect( 50, 0, 50,50 );
        this.graphics.endFill();
        this.graphics.beginFill( 0xff0000 );
        this.graphics.drawRect( 0, 50, 50,50 );
        this.graphics.endFill();               
    }

显示容器

所有的显示容器全部继承自 DisplayObjectContainer 类,该类继承自 DisplayObject 。也就是说,在Egret中,所有的容器都继承自 DisplayObject。

在Egret中,DisplayObjectContainer 封装了一些显示列表中常用的功能,将在后面文档中详细介绍。这些常用操作主要分为四类:

添加、删除子对象

访问子对象

检测子对象

设置叠放次序

在Egret中,显示对象被分为两大类:一种是可以包括其他显示对象的显示对象容器,简称为“容器”。另外一种是单纯的显示对象,除自身以外不能包括其他显示对象,简称“非容器对象”。

Sprite容器

Sprite继承自 DisplayObjectContainer,同时添加了Graphics功能(绘图功能);

自定义容器

自定义容器,可编写一个类,继承 DisplayObjectContainer 。如果要同时实现Graphics绘图功能,可继承 Sprite

class GridSprite extends egret.Sprite{
   .....
}

显示列表

显示列表用来管理和组织容器和非容器对象,当某个显示对象处在显示列表中,就可以在画面中看到该对象。当显示对象从显示列表中移除后,该对象从画面中消失。在Egret内部维护着一个显示列表。

在这个树状结构中,处于最上层的是“舞台”。对应到程序中,是 stage 对象。舞台是Egret显示架构中最根本的显示容器。每个Egret应有且只有一个stage对象。舞台是这个显示树结构的根节点。

在舞台中,我们还拥有一个主容器。这个容器就是文档类所创建的容器。每一个Egret都会拥有一个文档类,这个文档类必须是一个显示对象容器。

 

 

猜你喜欢

转载自my.oschina.net/u/3112095/blog/1785393