obelisk.js
Version:
JavaScript Library for Building Pixel Isometric Element with HTML5 Canvas
36 lines (26 loc) • 834 B
JavaScript
/*jslint node: true*/
;
var AbstractDimension = require('./AbstractDimension');
var CubeDimension, p;
CubeDimension = function (xAxis, yAxis, zAxis) {
this.initialize(xAxis, yAxis, zAxis);
};
p = CubeDimension.prototype = new AbstractDimension();
// constructor
p.initialize = function (xAxis, yAxis, zAxis) {
this.xAxis = xAxis || 30;
this.yAxis = yAxis || 30;
this.zAxis = zAxis || 30;
if (this.xAxis % 2 === 1 || this.yAxis % 2 === 1) {
throw new Error('x,yAxis must be even number');
}
// xAxis || yAxis = 4 floodFill could not be applied
if (this.xAxis <= 4 || this.yAxis <= 4 || this.zAxis <= 2) {
throw new Error('dimension is too small');
}
return this;
};
p.toString = function () {
return '[CubeDimension]';
};
module.exports = CubeDimension;