ActionScript
TypeScript
JavaScript

旋转与缩放

发布时间:2017-01-21

        在LayaAir引擎中可以通过设置显示对象的rotation属性来改变显示对象的旋转,通过设置scaleX scaleY来控制显示对象的缩放。

代码示例:

package  
{
	import laya.display.Sprite;
	import laya.net.Loader;
	import laya.resource.Texture;
	import laya.utils.Handler;
	/**
	 * ...
	 * @author ww
	 */
	public class RotationAndScaleSample 
	{
		
		public function RotationAndScaleSample() 
		{
			//初始化引擎
			Laya.init(1000, 900);
			
			//加载引擎需要的资源
			Laya.loader.load([{url: "res/atlas/comp.json", type: Loader.ATLAS}], Handler.create(this, onLoaded));
		}
		
		
		private function onLoaded():void 
		{
			//绘制不带pivot值的例子
			createNoPivotSprites();
			//绘制带pivot值的例子
			createPivotSprites();
			
		}
		private function createNoPivotSprites():void
		{
			var sprite0:Sprite;
			sprite0 = createASprite();
			sprite0.pos(100, 100);
			Laya.stage.addChild(sprite0);
			
			var sprite1:Sprite;
			sprite1 = createASprite();
			sprite1.pos(300, 100);
			sprite1.scaleX = 0.5;
			sprite1.scaleY = 1.5;
			Laya.stage.addChild(sprite1);
			
			var sprite2:Sprite;
			sprite2 = createASprite();
			sprite2.pos(500, 100);
			sprite2.rotation = 45;
			Laya.stage.addChild(sprite2);
		}
		
		private function createPivotSprites():void
		{
			var pivotLen:int = 50;
			var sprite0:Sprite;
			sprite0 = createASprite(pivotLen,pivotLen);
			sprite0.pos(100, 400);
			Laya.stage.addChild(sprite0);
			
			var sprite1:Sprite;
			sprite1 = createASprite(pivotLen,pivotLen);
			sprite1.pos(300, 400);
			sprite1.scaleX = 0.5;
			sprite1.scaleY = 1.25;
			Laya.stage.addChild(sprite1);
			
			var sprite2:Sprite;
			sprite2 = createASprite(pivotLen,pivotLen);
			sprite2.pos(500, 400);
			sprite2.rotation = 45;
			Laya.stage.addChild(sprite2);
		}
		
		private function createASprite(pivotX:Number=0,pivotY:Number=0):Sprite
		{
			var texture:Texture;
			texture = Loader.getRes("comp/image.png");
			var sprite:Sprite;
			sprite = new Sprite();
			sprite.pivot(pivotX, pivotY);
			//画一个图片用来展示效果
			sprite.graphics.drawTexture(texture, 0, 0);
			//画出轴心点pivotX pivotY的位置
			sprite.graphics.drawCircle(pivotX, pivotY, 5, "#ff0000");
			return sprite;
		}
	}

}

运行结果:

blob.png