@megavr/ecsy-babylon
Version:
babylon.js ecsy binding and helpers
39 lines (38 loc) • 1.08 kB
JavaScript
import * as BABYLON from "@babylonjs/core";
/**
* Translate degree to radians.
* @param degree Degree
*/
export function degreeToRadians(degree) {
return BABYLON.Angle.FromDegrees(degree).radians();
}
/**
* Convert XYZProperties value to Vector3.
* @param properties XYZProperties value
*/
export function xyzToVector3(properties) {
return new BABYLON.Vector3(properties.x, properties.y, properties.z);
}
/**
* Convert XYZProperties degree value to Vector3 in radians.
* @param properties XYZProperties value in degrees
*/
export function xyzToVector3Radians(properties) {
return new BABYLON.Vector3(degreeToRadians(properties.x), degreeToRadians(properties.y), degreeToRadians(properties.z));
}
/**
* @hidden
* Create object by XYZ values or create all zero object.
* @param x value
* @param y value
* @param z value
* @returns Object matches XYZProperties
*/
export function xyz(x, y, z) {
if (x && y && z) {
return { x: x, y: y, z: z };
}
else {
return { x: 0, y: 0, z: 0 };
}
}