Newer
Older
define(['underscore', 'backbone', 'appState', 'globals', 'plist', 'three', 'threeModel'],
function(_, Backbone, appState, globals, plist, THREE, three){
var GIKLattice = {
_initLatticeType: function(){
require(['squareBaseplane'], function(SquareBasePlane){
globals.basePlane = new SquareBasePlane();
});
require([this.getHighlighterFile()], function(superCellHighlighter){
appState.set("superCellRange", new THREE.Vector3(appState.get("gikLength"), 1, 1));
getHighlighterFile: function(){
return "superCellHighlighter";
},
getIndexForPosition: function(absPosition){
return this._indexForPosition(absPosition);
},
getPositionForIndex: function(index){
return this._positionForIndex(index);
},
return 0;
},
_zIndexRotationSuperCell: function(index){
if (index.z%2 != 1) return Math.PI/2;//todo this goes neg if zIndexRotation rules are opp? need to clear this up eventually
getCellSubclassFile: function(){
return "gikSuperCell";
},
_undo: function(){//remove all the mixins, this will help with debugging later
var self = this;
_.each(_.keys(GIKLattice), function(key){
self[key] = null;
});