Package | laya.display |
Class | public class Graphics |
Inheritance | Graphics Object |
Subclasses | AutoBitmap, GraphicsGL |
Graphics
类用于创建绘图显示对象。Graphics可以同时绘制多个位图或者矢量图,还可以结合save,restore,transform,scale,rotate,translate,alpha等指令对绘图效果进行变化。
Graphics以命令流方式存储,可以通过cmds属性访问所有命令流。Graphics是比Sprite更轻量级的对象,合理使用能提高应用性能(比如把大量的节点绘图改为一个节点的Graphics命令集合,能减少大量节点创建消耗)。
See also
Property | Defined By | ||
---|---|---|---|
cmds : Array | Graphics |
Method | Defined By | ||
---|---|---|---|
Graphics()
创建一个新的 Graphics 类实例。
| Graphics | ||
alpha(value:Number):void
设置透明度。
| Graphics | ||
clear(recoverCmds:Boolean = false):void
清空绘制命令。
| Graphics | ||
clipRect(x:Number, y:Number, width:Number, height:Number):void
设置剪裁区域,超出剪裁区域的坐标不显示。
| Graphics | ||
destroy():void
销毁此对象。
| Graphics | ||
drawCircle(x:Number, y:Number, radius:Number, fillColor:*, lineColor:* = null, lineWidth:Number = 1):void
绘制圆形。
| Graphics | ||
drawCurves(x:Number, y:Number, points:Array, lineColor:*, lineWidth:Number = 1):void
绘制一系列曲线。
| Graphics | ||
drawLine(fromX:Number, fromY:Number, toX:Number, toY:Number, lineColor:String, lineWidth:Number = 1):void
绘制一条线。
| Graphics | ||
drawLines(x:Number, y:Number, points:Array, lineColor:*, lineWidth:Number = 1):void
绘制一系列线段。
| Graphics | ||
drawPath(x:Number, y:Number, paths:Array, brush:Object = null, pen:Object = null):void
绘制路径。
| Graphics | ||
drawPie(x:Number, y:Number, radius:Number, startAngle:Number, endAngle:Number, fillColor:*, lineColor:* = null, lineWidth:Number = 1):void
绘制扇形。
| Graphics | ||
drawPoly(x:Number, y:Number, points:Array, fillColor:*, lineColor:* = null, lineWidth:Number = 1):void
绘制多边形。
| Graphics | ||
drawRect(x:Number, y:Number, width:Number, height:Number, fillColor:*, lineColor:* = null, lineWidth:Number = 1):void
绘制矩形。
| Graphics | ||
drawTexture(tex:Texture, x:Number = 0, y:Number = 0, width:Number = 0, height:Number = 0, m:Matrix = null, alpha:Number = 1):Array
绘制纹理。
| Graphics | ||
drawTextures(tex:Texture, pos:Array):void
批量绘制同样纹理。
| Graphics | ||
fillBorderText(text:*, x:Number, y:Number, font:String, fillColor:String, borderColor:String, lineWidth:Number, textAlign:String):void
在画布上绘制“被填充且镶边的”文本。
| Graphics | ||
fillText(text:String, x:Number, y:Number, font:String, color:String, textAlign:String, underLine:int = 0):void
在画布上绘制文本。
| Graphics | ||
fillTexture(tex:Texture, x:Number, y:Number, width:Number = 0, height:Number = 0, type:String = repeat, offset:Point = null):void
用texture填充。
| Graphics | ||
获取位置及宽高信息矩阵(比较耗CPU,频繁使用会造成卡顿,尽量少用)。
| Graphics | ||
loadImage(url:String, x:Number = 0, y:Number = 0, width:Number = 0, height:Number = 0, complete:Function = null):void
加载并显示一个图片。
| Graphics | ||
restore():void
返回之前保存过的路径状态和属性。
| Graphics | ||
rotate(angle:Number, pivotX:Number = 0, pivotY:Number = 0):void
旋转当前绘图。(推荐使用transform,性能更高)
| Graphics | ||
save():void
保存当前环境的状态。
| Graphics | ||
scale(scaleX:Number, scaleY:Number, pivotX:Number = 0, pivotY:Number = 0):void
缩放当前绘图至更大或更小。(推荐使用transform,性能更高)
| Graphics | ||
setAlpha(value:Number):void
设置当前透明度。
| Graphics | ||
setFilters(fs:Array):void | Graphics | ||
strokeText(text:*, x:Number, y:Number, font:String, color:String, lineWidth:Number, textAlign:String):void
在画布上绘制文本(没有填色)。文本的默认颜色是黑色。
| Graphics | ||
替换绘图的当前转换矩阵。
| Graphics | ||
translate(x:Number, y:Number):void
重新映射画布上的 (0,0) 位置。
| Graphics |
cmds | property |
cmds:Array
public function get cmds():Array
public function set cmds(value:Array):void
Graphics | () | Constructor |
public function Graphics()
创建一个新的 Graphics
类实例。
alpha | () | method |
public function alpha(value:Number):void
设置透明度。
Parameters
value:Number — 透明度。
|
clear | () | method |
public function clear(recoverCmds:Boolean = false):void
清空绘制命令。
Parameters
recoverCmds:Boolean (default = false ) — 是否回收绘图指令
|
clipRect | () | method |
public function clipRect(x:Number, y:Number, width:Number, height:Number):void
设置剪裁区域,超出剪裁区域的坐标不显示。
Parameters
x:Number — X 轴偏移量。
| |
y:Number — Y 轴偏移量。
| |
width:Number — 宽度。
| |
height:Number — 高度。
|
destroy | () | method |
public function destroy():void
销毁此对象。
drawCircle | () | method |
public function drawCircle(x:Number, y:Number, radius:Number, fillColor:*, lineColor:* = null, lineWidth:Number = 1):void
绘制圆形。
Parameters
x:Number — 圆点X 轴位置。
| |
y:Number — 圆点Y 轴位置。
| |
radius:Number — 半径。
| |
fillColor:* — 填充颜色,或者填充绘图的渐变对象。
| |
lineColor:* (default = null ) — (可选)边框颜色,或者填充绘图的渐变对象。
| |
lineWidth:Number (default = 1 ) — (可选)边框宽度。
|
drawCurves | () | method |
public function drawCurves(x:Number, y:Number, points:Array, lineColor:*, lineWidth:Number = 1):void
绘制一系列曲线。
Parameters
x:Number — 开始绘制的 X 轴位置。
| |
y:Number — 开始绘制的 Y 轴位置。
| |
points:Array — 线段的点集合,格式[startx,starty,ctrx,ctry,startx,starty...]。
| |
lineColor:* — 线段颜色,或者填充绘图的渐变对象。
| |
lineWidth:Number (default = 1 ) — (可选)线段宽度。
|
drawLine | () | method |
public function drawLine(fromX:Number, fromY:Number, toX:Number, toY:Number, lineColor:String, lineWidth:Number = 1):void
绘制一条线。
Parameters
fromX:Number — X轴开始位置。
| |
fromY:Number — Y轴开始位置。
| |
toX:Number — X轴结束位置。
| |
toY:Number — Y轴结束位置。
| |
lineColor:String — 颜色。
| |
lineWidth:Number (default = 1 ) — (可选)线条宽度。
|
drawLines | () | method |
public function drawLines(x:Number, y:Number, points:Array, lineColor:*, lineWidth:Number = 1):void
绘制一系列线段。
Parameters
x:Number — 开始绘制的X轴位置。
| |
y:Number — 开始绘制的Y轴位置。
| |
points:Array — 线段的点集合。格式:[x1,y1,x2,y2,x3,y3...]。
| |
lineColor:* — 线段颜色,或者填充绘图的渐变对象。
| |
lineWidth:Number (default = 1 ) — (可选)线段宽度。
|
drawPath | () | method |
public function drawPath(x:Number, y:Number, paths:Array, brush:Object = null, pen:Object = null):void
绘制路径。
Parameters
x:Number — 开始绘制的 X 轴位置。
| |
y:Number — 开始绘制的 Y 轴位置。
| |
paths:Array — 路径集合,路径支持以下格式:[["moveTo",x,y],["lineTo",x,y,x,y,x,y],["arcTo",x1,y1,x2,y2,r],["closePath"]]。
| |
brush:Object (default = null ) — (可选)刷子定义,支持以下设置{fillStyle}。
| |
pen:Object (default = null ) — (可选)画笔定义,支持以下设置{strokeStyle,lineWidth,lineJoin,lineCap,miterLimit}。
|
drawPie | () | method |
public function drawPie(x:Number, y:Number, radius:Number, startAngle:Number, endAngle:Number, fillColor:*, lineColor:* = null, lineWidth:Number = 1):void
绘制扇形。
Parameters
x:Number — 开始绘制的 X 轴位置。
| |
y:Number — 开始绘制的 Y 轴位置。
| |
radius:Number — 扇形半径。
| |
startAngle:Number — 开始角度。
| |
endAngle:Number — 结束角度。
| |
fillColor:* — 填充颜色,或者填充绘图的渐变对象。
| |
lineColor:* (default = null ) — (可选)边框颜色,或者填充绘图的渐变对象。
| |
lineWidth:Number (default = 1 ) — (可选)边框宽度。
|
drawPoly | () | method |
public function drawPoly(x:Number, y:Number, points:Array, fillColor:*, lineColor:* = null, lineWidth:Number = 1):void
绘制多边形。
Parameters
x:Number — 开始绘制的 X 轴位置。
| |
y:Number — 开始绘制的 Y 轴位置。
| |
points:Array — 多边形的点集合。
| |
fillColor:* — 填充颜色,或者填充绘图的渐变对象。
| |
lineColor:* (default = null ) — (可选)边框颜色,或者填充绘图的渐变对象。
| |
lineWidth:Number (default = 1 ) — (可选)边框宽度。
|
drawRect | () | method |
public function drawRect(x:Number, y:Number, width:Number, height:Number, fillColor:*, lineColor:* = null, lineWidth:Number = 1):void
绘制矩形。
Parameters
x:Number — 开始绘制的 X 轴位置。
| |
y:Number — 开始绘制的 Y 轴位置。
| |
width:Number — 矩形宽度。
| |
height:Number — 矩形高度。
| |
fillColor:* — 填充颜色,或者填充绘图的渐变对象。
| |
lineColor:* (default = null ) — (可选)边框颜色,或者填充绘图的渐变对象。
| |
lineWidth:Number (default = 1 ) — (可选)边框宽度。
|
drawTexture | () | method |
public function drawTexture(tex:Texture, x:Number = 0, y:Number = 0, width:Number = 0, height:Number = 0, m:Matrix = null, alpha:Number = 1):Array
绘制纹理。
Parameters
tex:Texture — 纹理。
| |
x:Number (default = 0 ) — (可选)X轴偏移量。
| |
y:Number (default = 0 ) — (可选)Y轴偏移量。
| |
width:Number (default = 0 ) — (可选)宽度。
| |
height:Number (default = 0 ) — (可选)高度。
| |
m:Matrix (default = null ) — (可选)矩阵信息。
| |
alpha:Number (default = 1 ) — (可选)透明度。
|
Array |
drawTextures | () | method |
public function drawTextures(tex:Texture, pos:Array):void
批量绘制同样纹理。
Parameters
tex:Texture — 纹理。
| |
pos:Array — 绘制次数和坐标。
|
fillBorderText | () | method |
public function fillBorderText(text:*, x:Number, y:Number, font:String, fillColor:String, borderColor:String, lineWidth:Number, textAlign:String):void
在画布上绘制“被填充且镶边的”文本。
Parameters
text:* — 在画布上输出的文本。
| |
x:Number — 开始绘制文本的 x 坐标位置(相对于画布)。
| |
y:Number — 开始绘制文本的 y 坐标位置(相对于画布)。
| |
font:String — 定义字体和字号,比如"20px Arial"。
| |
fillColor:String — 定义文本颜色,比如"#ff0000"。
| |
borderColor:String — 定义镶边文本颜色。
| |
lineWidth:Number — 镶边线条宽度。
| |
textAlign:String — 文本对齐方式,可选值:"left","center","right"。
|
fillText | () | method |
public function fillText(text:String, x:Number, y:Number, font:String, color:String, textAlign:String, underLine:int = 0):void
在画布上绘制文本。
Parameters
text:String — 在画布上输出的文本。
| |
x:Number — 开始绘制文本的 x 坐标位置(相对于画布)。
| |
y:Number — 开始绘制文本的 y 坐标位置(相对于画布)。
| |
font:String — 定义字号和字体,比如"20px Arial"。
| |
color:String — 定义文本颜色,比如"#ff0000"。
| |
textAlign:String — 文本对齐方式,可选值:"left","center","right"。
| |
underLine:int (default = 0 )
|
fillTexture | () | method |
public function fillTexture(tex:Texture, x:Number, y:Number, width:Number = 0, height:Number = 0, type:String = repeat, offset:Point = null):void
用texture填充。
Parameters
tex:Texture — 纹理。
| |
x:Number — X轴偏移量。
| |
y:Number — Y轴偏移量。
| |
width:Number (default = 0 ) — (可选)宽度。
| |
height:Number (default = 0 ) — (可选)高度。
| |
type:String (default = repeat ) — (可选)填充类型 repeat|repeat-x|repeat-y|no-repeat
| |
offset:Point (default = null ) — (可选)贴图纹理偏移
|
getBounds | () | method |
public function getBounds(realSize:Boolean = false):Rectangle
获取位置及宽高信息矩阵(比较耗CPU,频繁使用会造成卡顿,尽量少用)。
Parameters
realSize:Boolean (default = false ) — (可选)使用图片的真实大小,默认为false
|
Rectangle — 位置与宽高组成的 一个 Rectangle 对象。
|
loadImage | () | method |
public function loadImage(url:String, x:Number = 0, y:Number = 0, width:Number = 0, height:Number = 0, complete:Function = null):void
加载并显示一个图片。
Parameters
url:String — 图片地址。
| |
x:Number (default = 0 ) — (可选)显示图片的x位置。
| |
y:Number (default = 0 ) — (可选)显示图片的y位置。
| |
width:Number (default = 0 ) — (可选)显示图片的宽度,设置为0表示使用图片默认宽度。
| |
height:Number (default = 0 ) — (可选)显示图片的高度,设置为0表示使用图片默认高度。
| |
complete:Function (default = null ) — (可选)加载完成回调。
|
restore | () | method |
public function restore():void
返回之前保存过的路径状态和属性。
rotate | () | method |
public function rotate(angle:Number, pivotX:Number = 0, pivotY:Number = 0):void
旋转当前绘图。(推荐使用transform,性能更高)
Parameters
angle:Number — 旋转角度,以弧度计。
| |
pivotX:Number (default = 0 ) — (可选)水平方向轴心点坐标。
| |
pivotY:Number (default = 0 ) — (可选)垂直方向轴心点坐标。
|
save | () | method |
public function save():void
保存当前环境的状态。
scale | () | method |
public function scale(scaleX:Number, scaleY:Number, pivotX:Number = 0, pivotY:Number = 0):void
缩放当前绘图至更大或更小。(推荐使用transform,性能更高)
Parameters
scaleX:Number — 水平方向缩放值。
| |
scaleY:Number — 垂直方向缩放值。
| |
pivotX:Number (default = 0 ) — (可选)水平方向轴心点坐标。
| |
pivotY:Number (default = 0 ) — (可选)垂直方向轴心点坐标。
|
setAlpha | () | method |
public function setAlpha(value:Number):void
设置当前透明度。
Parameters
value:Number — 透明度。
|
setFilters | () | method |
public function setFilters(fs:Array):void
Parameters
fs:Array |
strokeText | () | method |
public function strokeText(text:*, x:Number, y:Number, font:String, color:String, lineWidth:Number, textAlign:String):void
在画布上绘制文本(没有填色)。文本的默认颜色是黑色。
Parameters
text:* — 在画布上输出的文本。
| |
x:Number — 开始绘制文本的 x 坐标位置(相对于画布)。
| |
y:Number — 开始绘制文本的 y 坐标位置(相对于画布)。
| |
font:String — 定义字体和字号,比如"20px Arial"。
| |
color:String — 定义文本颜色,比如"#ff0000"。
| |
lineWidth:Number — 线条宽度。
| |
textAlign:String — 文本对齐方式,可选值:"left","center","right"。
|
transform | () | method |
public function transform(matrix:Matrix, pivotX:Number = 0, pivotY:Number = 0):void
替换绘图的当前转换矩阵。
Parameters
matrix:Matrix — 矩阵。
| |
pivotX:Number (default = 0 ) — (可选)水平方向轴心点坐标。
| |
pivotY:Number (default = 0 ) — (可选)垂直方向轴心点坐标。
|
translate | () | method |
public function translate(x:Number, y:Number):void
重新映射画布上的 (0,0) 位置。
Parameters
x:Number — 添加到水平坐标(x)上的值。
| |
y:Number — 添加到垂直坐标(y)上的值。
|