Packagejp.naggg.effects
Classpublic class Camera2D
InheritanceCamera2D Inheritance Object

二次元空間でのカメラ. X座標・Y座標とズームにより、2.5次元の演出を行うことができます. 初期設定で与えたステージオブジェクトの座標とスケールをいじるので、 外部から操作しないようにする点に注意してください.

View the examples



Public Properties
 PropertyDefined By
  cameraStage : DisplayObject
カメラを向けているステージとなる表示オブジェクト
Camera2D
  centerX : Number
cameraStage自身の座標系から見たカメラの中心x座標、例えば横幅1000pxで左上基準のインスタンスで、中心に配置したい場合は、500を指定します.
Camera2D
  centerY : Number
cameraStage自身の座標系から見たカメラの中心y座標、例えば縦幅600pxで左上基準のインスタンスで、中心に配置したい場合は、300を指定します.
Camera2D
  x : Number
カメラの x 座標
Camera2D
  y : Number
カメラの y 座標
Camera2D
  zoom : Number
カメラのズーム、デフォルトは 1 で、0.01 以上の値を設定
Camera2D
Protected Properties
 PropertyDefined By
  cameraStageOrgX : Number
Camera2D
  cameraStageOrgY : Number
Camera2D
  _centerX : Number = 0
画面中央基準にするためのX座標の差分
Camera2D
  _centerY : Number = 0
画面中央基準にするためのY座標の差分
Camera2D
  transformMatrix : Matrix
Camera2D
  updatedTransform : Boolean = false
Camera2D
  _x : Number = 0
カメラの x 座標
Camera2D
  _y : Number = 0
カメラの y 座標
Camera2D
  _zoom : Number = 1
カメラのズーム、デフォルトは 1 で、0.0001 以上の値を設定
Camera2D
Public Methods
 MethodDefined By
  
Camera2D(cameraStage:DisplayObject, centerX:Number = 0, centerY:Number = 0)
Camera2D
  
render():void
描画の実行(プロパティの更新)
Camera2D
  
toString():String
Camera2D
Protected Methods
 MethodDefined By
  
Camera2D
  
変形の監視
Camera2D
  
Camera2D
Property Detail
_centerXproperty
protected var _centerX:Number = 0

画面中央基準にするためのX座標の差分

_centerYproperty 
protected var _centerY:Number = 0

画面中央基準にするためのY座標の差分

_xproperty 
protected var _x:Number = 0

カメラの x 座標

_yproperty 
protected var _y:Number = 0

カメラの y 座標

_zoomproperty 
protected var _zoom:Number = 1

カメラのズーム、デフォルトは 1 で、0.0001 以上の値を設定

cameraStageproperty 
public var cameraStage:DisplayObject

カメラを向けているステージとなる表示オブジェクト

cameraStageOrgXproperty 
protected var cameraStageOrgX:Number

cameraStageOrgYproperty 
protected var cameraStageOrgY:Number

centerXproperty 
centerX:Number

cameraStage自身の座標系から見たカメラの中心x座標、例えば横幅1000pxで左上基準のインスタンスで、中心に配置したい場合は、500を指定します.


Implementation
    public function get centerX():Number
    public function set centerX(value:Number):void
centerYproperty 
centerY:Number

cameraStage自身の座標系から見たカメラの中心y座標、例えば縦幅600pxで左上基準のインスタンスで、中心に配置したい場合は、300を指定します.


Implementation
    public function get centerY():Number
    public function set centerY(value:Number):void
transformMatrixproperty 
protected var transformMatrix:Matrix

updatedTransformproperty 
protected var updatedTransform:Boolean = false

xproperty 
x:Number

カメラの x 座標


Implementation
    public function get x():Number
    public function set x(value:Number):void
yproperty 
y:Number

カメラの y 座標


Implementation
    public function get y():Number
    public function set y(value:Number):void
zoomproperty 
zoom:Number

カメラのズーム、デフォルトは 1 で、0.01 以上の値を設定


Implementation
    public function get zoom():Number
    public function set zoom(value:Number):void
Constructor Detail
Camera2D()Constructor
public function Camera2D(cameraStage:DisplayObject, centerX:Number = 0, centerY:Number = 0)

Parameters
cameraStage:DisplayObject — カメラの対象となる表示オブジェクト、内部で座標とスケールをいじるため、外部から操作しないように注意してください.
 
centerX:Number (default = 0) — cameraStage自身の座標系から見たカメラの中心x座標、例えば横幅1000pxで左上基準のインスタンスで、中心に配置したい場合は、500を指定します.
 
centerY:Number (default = 0) — cameraStage自身の座標系から見たカメラの中心y座標、例えば縦幅600pxで左上基準のインスタンスで、中心に配置したい場合は、300を指定します.
Method Detail
cameraStageAddedToStageHandler()method
protected function cameraStageAddedToStageHandler(evt:Event):void

Parameters

evt:Event

cameraStageEnterFrameHandler()method 
protected function cameraStageEnterFrameHandler(evt:Event):void

変形の監視

Parameters

evt:Event

cameraStageRemovedFromStageHandler()method 
protected function cameraStageRemovedFromStageHandler(evt:Event):void

Parameters

evt:Event

render()method 
public function render():void

描画の実行(プロパティの更新)

toString()method 
public function toString():String

Returns
String
Examples
     import jp.naggg.effects.Camera2D;
     var camera:Camera2D = new Camera2D(this, 500, 300);
     this.onEnterFrame = function(){
         camera.x += 1;
         camera.zoom += 0.1;
         if(camera.x >= 500){
             delete this.onEnterFrame;
         }
     }