mirror of
https://github.com/MapMakersAndProgrammers/Alternativa3D.git
synced 2025-10-26 09:59:10 -07:00
Merge pull request #13 from therabbitwindfall/master
Add setPosition, lookAt to Camera3D and converting between Radians and Degrees in Object3DUtils
This commit is contained in:
@@ -407,6 +407,29 @@ public class Camera3D extends Object3D {
|
||||
occluders.length = 0;
|
||||
context3D = null;
|
||||
}
|
||||
|
||||
/**
|
||||
* Setup Camera3D position using x, y, z coordinates
|
||||
*/
|
||||
|
||||
public function setPosition(x:Number, y:Number, z:Number):void{
|
||||
this.x = x;
|
||||
this.y = y;
|
||||
this.z = z;
|
||||
}
|
||||
|
||||
/**
|
||||
* Camera3D lookAt method
|
||||
*/
|
||||
public function lookAt(x:Number, y:Number, z:Number):void{
|
||||
var deltaX:Number = x - this.x;
|
||||
var deltaY:Number = y - this.y;
|
||||
var deltaZ:Number = z - this.z;
|
||||
var rotX = Math.atan2(deltaZ, Math.sqrt(deltaX * deltaX + deltaY * deltaY));
|
||||
rotationX = rotX - 0.5 * Math.PI;
|
||||
rotationY = 0;
|
||||
rotationZ = - Math.atan2(deltaX,deltaY);
|
||||
}
|
||||
|
||||
/**
|
||||
* @private
|
||||
|
||||
@@ -22,6 +22,20 @@ package alternativa.engine3d.utils {
|
||||
|
||||
private static const toRootTransform:Transform3D = new Transform3D();
|
||||
private static const fromRootTransform:Transform3D = new Transform3D();
|
||||
|
||||
/**
|
||||
* @public
|
||||
* Convert Degress to Radians and Radians to Degrees
|
||||
*/
|
||||
|
||||
public static function toRadians(degrees:Number):Number{
|
||||
return degrees * Math.PI / 180;
|
||||
}
|
||||
|
||||
public static function toDegrees(radians:Number):Number{
|
||||
return radians * 180 / Math.PI;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @private
|
||||
|
||||
Reference in New Issue
Block a user