summaryrefslogtreecommitdiff
path: root/assets/javascripts/environments/tableaux/columns_circle.js
diff options
context:
space:
mode:
authorJules Laplace <jules@okfoc.us>2014-04-09 17:45:32 -0400
committerJules Laplace <jules@okfoc.us>2014-04-09 17:45:32 -0400
commitcbd5e2411cd4df39dda75723da9c5e0153ad3331 (patch)
tree61090416889211be2b0d2a37cf5fe0fd545a77e7 /assets/javascripts/environments/tableaux/columns_circle.js
parent12d7bd4b9dba1c9e51b80059af650ff3fbfda0ca (diff)
box-drawing example
Diffstat (limited to 'assets/javascripts/environments/tableaux/columns_circle.js')
-rw-r--r--assets/javascripts/environments/tableaux/columns_circle.js42
1 files changed, 42 insertions, 0 deletions
diff --git a/assets/javascripts/environments/tableaux/columns_circle.js b/assets/javascripts/environments/tableaux/columns_circle.js
new file mode 100644
index 0000000..1816e51
--- /dev/null
+++ b/assets/javascripts/environments/tableaux/columns_circle.js
@@ -0,0 +1,42 @@
+MX.Tableaux.ColumnsCircle = MX.Tableau.extend({
+
+ init: function (opt) {
+
+ this.opt = opt = defaults(opt, {
+ width: 10,
+ height: 10,
+ depth: 10,
+ radius: 10,
+ theta: 0,
+ skip: 0,
+ x: 0,
+ y: 0,
+ z: 0,
+ rotationY: 0,
+ rotationX: 0,
+ scale: 1,
+ count: 3,
+ })
+
+ var scalebox, theta
+ var radius = opt.radius
+
+ for (var i = opt.skip; i < opt.count; i++) {
+ theta = i/opt.count * TWO_PI + opt.theta
+ scalebox = new MX.ScaleBox({
+ "width": opt.width,
+ "height": opt.height,
+ "depth": opt.depth,
+ "x": opt.x + sin(theta) * radius,
+ "y": opt.y,
+ "z": opt.z + cos(theta) * radius,
+ "rotationY": PI - theta,
+ "color": opt.color,
+ "sides": "top bottom left right front back"
+ });
+ scene.add(scalebox)
+ }
+
+ }
+
+})