<script>
// DATA
var points = [
[[0,0,0],[.2,.1,0],[.3,.3,0]],
[[-.3,-.3,-.1],[-.2,-.1,0],[-.1,.2,.2]],
[[.1,.2,-.8],[.05,.1,-.3],[.05,.05,.4]]
];
mathbox = mathBox({
plugins: ['core', 'controls', 'cursor'],
controls: {
klass: THREE.OrbitControls
},
camera: {near: .01,far: 1000}
});
three = mathbox.three;
three.camera.position.set(-.5, .3, 2);
three.camera.lookAt(new THREE.Vector3())
three.renderer.setClearColor(new THREE.Color(0xFFFFFF), 1.0);
setInterval(function () {
present.set('index', (present.get('index') + 1) % (present.get('length') + 1));
}, 1000);
view = mathbox
.cartesian({
range: [[-2, 2], [-1, 1], [-1, 1]],
scale: [2, 1, 1],
});
var present = view.present({index: 1})
view.axis({zBias: -10,end: true,width: 10,});
view.axis({axis: 2,zBias: -10,end: true,width: 10,});
view.grid({divideX: 30,width: 10,opacity: 0.5,zBias: -10,axes: [1, 3],});
present
.slide({steps: 3})
.interval({
width:3,
channels: 3,
expr: function (emit, x, i, time) {
var index = present.get('index')-1
emit(points[i][index][0],points[i][index][1],points[i][index][2]);
},
})
.point({
color: 0xff4444,
size: 40,
zIndex: 2
})
</script>