Flash 平台技术的优化(八) 绘图 API

使用绘图 API 可加快代码执行。
Flash Player 10 提供了一个新的绘图 API,使用它可获得更好的代码执行性能。此新的 API 不提供呈现性能改进,但是可以大大减少必须编写的代码行数。代码行越少, ActionScript 执行性能越好。
此新绘图 API 包含下列方法:
• drawPath()
• drawGraphicsData()
• drawTriangles()
注: 本讨论不会重点介绍 drawTriangles() 方法,此方法与 3D 有关。但是,此方法可以改进 ActionScript 性能,因为它可以处理本机纹理映射。
以下代码为每个正在绘制的代码行明确地调用相应的方法:
var container:Shape = new Shape();
container.graphics.beginFill(0x442299);
var coords:Vector.<Number> = Vector.<Number>([132, 20, 46, 254, 244, 100, 20, 98, 218, 254]);
container.graphics.moveTo ( coords[0], coords[1] );
container.graphics.lineTo ( coords[2], coords[3] );
container.graphics.lineTo ( coords[4], coords[5] );
container.graphics.lineTo ( coords[6], coords[7] );
container.graphics.lineTo ( coords[8], coords[9] );
addChild( container );
以下代码的运行速度比上一示例快,因为它执行的代码行比较少。路径越复杂,使用 drawPath() 方法获得的性能越高:
var container:Shape = new Shape();
container.graphics.beginFill(0x442299);
var commands:Vector.<int> = Vector.<int>([1,2,2,2,2]);
var coords:Vector.<Number> = Vector.<Number>([132, 20, 46, 254, 244, 100, 20, 98, 218, 254]);
container.graphics.drawPath(commands, coords);
addChild( container );

drawGraphicsData() 方法可提供类似的性能改进。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值