name space

by jmchen

HTML

<script src="http://cdnjs.cloudflare.com/ajax/libs/three.js/r70/three.min.js"></script>

JavaScript

//
// reference: http://javascriptissexy.com/12-simple-yet-powerful-javascript-tips/
//

var myTHREE = myTHREE || {};

// myTHREE
// Vector3 is for spherical coordinate (r, phi, theta)
// (see wikipedia)
//
myTHREE.Vector3 = function (r, phi, theta) {

    this.r = r || 0;
    this.phi = phi || 0;
    this.theta = theta || 0;
};

myTHREE.Vector3.prototype.toXYZ = function () {
    var r = this.r;
    var theta = this.theta;
    var phi = this.phi;
   return [r * Math.cos(phi) * Math.cos(theta), r * Math.cos(phi) * Math.sin(theta), r * Math.sin(phi)];
    
};

var v = new THREE.Vector3();
var myv = new myTHREE.Vector3(1, Math.PI/4, 0);
var xyz = myv.toXYZ();

alert (xyz);