From 92ec249045202153fe43f049bdafef8ada54d56b Mon Sep 17 00:00:00 2001 From: Amanda Ghassaei <amandaghassaei@gmail.com> Date: Tue, 30 Jun 2015 15:53:19 -0700 Subject: [PATCH] static and dynamic menuss for simulation --- js/main.js | 14 ++++++++++-- js/menus/EDynamicMenuView.js | 22 +++++++++++++++++++ .../{PhysicsMenuView.js => ESetupMenuView.js} | 2 +- js/menus/EStaticMenuView.js | 22 +++++++++++++++++++ js/menus/ImportMenuView.js | 20 ++++++++--------- js/menus/MDynamicMenuView.js | 21 ++++++++++++++++++ js/menus/MSetupMenuView.js | 22 +++++++++++++++++++ js/menus/MStaticMenuView.js | 22 +++++++++++++++++++ js/menus/Navbar.js | 6 ++++- js/menus/templates/EDynamicMenuView.html | 1 + js/menus/templates/ESetupMenuView.html | 1 + js/menus/templates/EStaticMenuView.html | 1 + js/menus/templates/MDynamicMenuView.html | 1 + js/menus/templates/MSetupMenuView.html | 1 + js/menus/templates/MStaticMenuView.html | 1 + js/menus/templates/OptimizationMenuView.html | 2 +- js/menus/templates/PhysicsMenuView.html | 5 ----- js/plists/PList.js | 20 ++++++++++++----- js/three/FillGeometry.js | 4 +++- 19 files changed, 160 insertions(+), 28 deletions(-) create mode 100644 js/menus/EDynamicMenuView.js rename js/menus/{PhysicsMenuView.js => ESetupMenuView.js} (68%) create mode 100644 js/menus/EStaticMenuView.js create mode 100644 js/menus/MDynamicMenuView.js create mode 100644 js/menus/MSetupMenuView.js create mode 100644 js/menus/MStaticMenuView.js create mode 100644 js/menus/templates/EDynamicMenuView.html create mode 100644 js/menus/templates/ESetupMenuView.html create mode 100644 js/menus/templates/EStaticMenuView.html create mode 100644 js/menus/templates/MDynamicMenuView.html create mode 100644 js/menus/templates/MSetupMenuView.html create mode 100644 js/menus/templates/MStaticMenuView.html delete mode 100644 js/menus/templates/PhysicsMenuView.html diff --git a/js/main.js b/js/main.js index bb162098..7dedc7c1 100644 --- a/js/main.js +++ b/js/main.js @@ -108,7 +108,6 @@ require.config({ importMenu: 'menus/ImportMenuView', partMenu: 'menus/PartMenuView', scriptMenu: 'menus/ScriptMenuView', - physicsMenu: 'menus/PhysicsMenuView', materialMenu: 'menus/MaterialMenuView', optimizeMenu: 'menus/OptimizationMenuView', assemblerMenu: 'menus/AssemblerMenuView', @@ -119,6 +118,12 @@ require.config({ materialEditorMenu: 'menus/MaterialEditorMenuView', setupCommMenu: 'menus/SetupCommMenuView', discoveryMenu: 'menus/DiscoveryMenuView', + eSetupMenu: 'menus/ESetupMenuView', + eStaticMenu: 'menus/EStaticMenuView', + eDynamicMenu: 'menus/EDynamicMenuView', + mSetupMenu: 'menus/MSetupMenuView', + mStaticMenu: 'menus/MStaticMenuView', + mDynamicMenu: 'menus/MDynamicMenuView', //templates navViewMenuTemplate: 'menus/templates/NavViewMenu.html', @@ -129,7 +134,6 @@ require.config({ importMenuTemplate: 'menus/templates/ImportMenuView.html', partMenuTemplate: 'menus/templates/PartMenuView.html', scriptMenuTemplate: 'menus/templates/ScriptMenuView.html', - physicsMenuTemplate: 'menus/templates/PhysicsMenuView.html', materialMenuTemplate: 'menus/templates/MaterialMenuView.html', optimizeMenuTemplate: 'menus/templates/OptimizationMenuView.html', assemblerMenuTemplate: 'menus/templates/AssemblerMenuView.html', @@ -140,6 +144,12 @@ require.config({ materialEditorMenuTemplate: 'menus/templates/MaterialEditorMenuView.html', setupCommMenuTemplate: 'menus/templates/SetupCommMenuView.html', discoveryMenuTemplate: 'menus/templates/DiscoveryMenuView.html', + eSetupMenuTemplate: 'menus/templates/ESetupMenuView.html', + eStaticMenuTemplate: 'menus/templates/EStaticMenuView.html', + eDynamicMenuTemplate: 'menus/templates/EDynamicMenuView.html', + mSetupMenuTemplate: 'menus/templates/MSetupMenuView.html', + mStaticMenuTemplate: 'menus/templates/MStaticMenuView.html', + mDynamicMenuTemplate: 'menus/templates/MDynamicMenuView.html', //cam cam: 'cam/cam', diff --git a/js/menus/EDynamicMenuView.js b/js/menus/EDynamicMenuView.js new file mode 100644 index 00000000..21cabc1a --- /dev/null +++ b/js/menus/EDynamicMenuView.js @@ -0,0 +1,22 @@ +/** + * Created by aghassaei on 6/30/15. + */ + + +define(['jquery', 'underscore', 'menuParent', 'plist', 'text!eDynamicMenuTemplate'], function($, _, MenuParentView, plist, template){ + + return MenuParentView.extend({ + + events: { + }, + + _initialize: function(){ + }, + + _makeTemplateJSON: function(){ + return null; + }, + + template: _.template(template) + }); +}); \ No newline at end of file diff --git a/js/menus/PhysicsMenuView.js b/js/menus/ESetupMenuView.js similarity index 68% rename from js/menus/PhysicsMenuView.js rename to js/menus/ESetupMenuView.js index 13bb5ac6..5967c307 100644 --- a/js/menus/PhysicsMenuView.js +++ b/js/menus/ESetupMenuView.js @@ -2,7 +2,7 @@ * Created by aghassaei on 2/25/15. */ -define(['jquery', 'underscore', 'menuParent', 'plist', 'text!physicsMenuTemplate'], function($, _, MenuParentView, plist, template){ +define(['jquery', 'underscore', 'menuParent', 'plist', 'text!eSetupMenuTemplate'], function($, _, MenuParentView, plist, template){ return MenuParentView.extend({ diff --git a/js/menus/EStaticMenuView.js b/js/menus/EStaticMenuView.js new file mode 100644 index 00000000..6257fdef --- /dev/null +++ b/js/menus/EStaticMenuView.js @@ -0,0 +1,22 @@ +/** + * Created by aghassaei on 6/30/15. + */ + + +define(['jquery', 'underscore', 'menuParent', 'plist', 'text!eStaticMenuTemplate'], function($, _, MenuParentView, plist, template){ + + return MenuParentView.extend({ + + events: { + }, + + _initialize: function(){ + }, + + _makeTemplateJSON: function(){ + return null; + }, + + template: _.template(template) + }); +}); \ No newline at end of file diff --git a/js/menus/ImportMenuView.js b/js/menus/ImportMenuView.js index 08143c9d..761a4f2d 100644 --- a/js/menus/ImportMenuView.js +++ b/js/menus/ImportMenuView.js @@ -3,7 +3,7 @@ */ define(['jquery', 'underscore', 'menuParent', 'plist', 'lattice', 'text!importMenuTemplate', 'fillGeometry', 'stlLoader'], - function($, _, MenuParentView, plist, lattice, template, FillGeometry, THREE){ + function($, _, MenuParentView, plist, lattice, template, fillGeometry, THREE){ return MenuParentView.extend({ @@ -20,12 +20,11 @@ define(['jquery', 'underscore', 'menuParent', 'plist', 'lattice', 'text!importMe _initialize: function(){ - this.fillGeometry = new FillGeometry(); - this.listenTo(this.fillGeometry, "change", this.render); + this.listenTo(fillGeometry, "change", this.render); }, getPropertyOwner: function($target){ - if ($target.hasClass("fillGeometry")) return this.fillGeometry; + if ($target.hasClass("fillGeometry")) return fillGeometry; return null; }, @@ -62,31 +61,30 @@ define(['jquery', 'underscore', 'menuParent', 'plist', 'lattice', 'text!importMe }, _loadMeshFromURL: function(url, filename){ - var self = this; var loader = new THREE.STLLoader(); loader.load(url, function(geometry){ - self.fillGeometry.buildNewMesh(geometry); - self.fillGeometry.set("filename", filename); + fillGeometry.buildNewMesh(geometry); + fillGeometry.set("filename", filename); }); }, _subtractGeo: function(e){ e.preventDefault(); - this.fillGeometry.subtractGeo(); + fillGeometry.subtractGeo(); }, _fillGeo: function(e){ e.preventDefault(); - this.fillGeometry.fillGeo(); + fillGeometry.fillGeo(); }, _removeMesh: function(e){ e.preventDefault(); - this.fillGeometry.removeMesh(); + fillGeometry.removeMesh(); }, _makeTemplateJSON: function(){ - return _.extend(this.model.toJSON(), this.fillGeometry.toJSON()); + return _.extend(this.model.toJSON(), fillGeometry.toJSON()); }, template: _.template(template) diff --git a/js/menus/MDynamicMenuView.js b/js/menus/MDynamicMenuView.js new file mode 100644 index 00000000..f0295769 --- /dev/null +++ b/js/menus/MDynamicMenuView.js @@ -0,0 +1,21 @@ +/** + * Created by aghassaei on 6/30/15. + */ + +define(['jquery', 'underscore', 'menuParent', 'plist', 'text!mDynamicMenuTemplate'], function($, _, MenuParentView, plist, template){ + + return MenuParentView.extend({ + + events: { + }, + + _initialize: function(){ + }, + + _makeTemplateJSON: function(){ + return null; + }, + + template: _.template(template) + }); +}); \ No newline at end of file diff --git a/js/menus/MSetupMenuView.js b/js/menus/MSetupMenuView.js new file mode 100644 index 00000000..c8d1c70d --- /dev/null +++ b/js/menus/MSetupMenuView.js @@ -0,0 +1,22 @@ +/** + * Created by aghassaei on 6/30/15. + */ + + +define(['jquery', 'underscore', 'menuParent', 'plist', 'text!mSetupMenuTemplate'], function($, _, MenuParentView, plist, template){ + + return MenuParentView.extend({ + + events: { + }, + + _initialize: function(){ + }, + + _makeTemplateJSON: function(){ + return null; + }, + + template: _.template(template) + }); +}); \ No newline at end of file diff --git a/js/menus/MStaticMenuView.js b/js/menus/MStaticMenuView.js new file mode 100644 index 00000000..851b5d15 --- /dev/null +++ b/js/menus/MStaticMenuView.js @@ -0,0 +1,22 @@ +/** + * Created by aghassaei on 6/30/15. + */ + + +define(['jquery', 'underscore', 'menuParent', 'plist', 'text!mStaticMenuTemplate'], function($, _, MenuParentView, plist, template){ + + return MenuParentView.extend({ + + events: { + }, + + _initialize: function(){ + }, + + _makeTemplateJSON: function(){ + return null; + }, + + template: _.template(template) + }); +}); \ No newline at end of file diff --git a/js/menus/Navbar.js b/js/menus/Navbar.js index 9e90c18d..93a2a143 100644 --- a/js/menus/Navbar.js +++ b/js/menus/Navbar.js @@ -3,7 +3,7 @@ */ -define(['jquery', 'underscore', 'backbone', 'fileSaver', 'navViewMenu'], function($, _, Backbone, fileSaver, NavViewMenu){ +define(['jquery', 'underscore', 'backbone', 'fileSaver', 'navViewMenu', 'appState'], function($, _, Backbone, fileSaver, NavViewMenu, appState){ return Backbone.View.extend({ @@ -55,6 +55,10 @@ define(['jquery', 'underscore', 'backbone', 'fileSaver', 'navViewMenu'], functio return; } e.preventDefault(); + if (navSelection == "navSim"){//choose which simulation package to pull up + this.model.set("currentNav", appState.get("materialClass") + "NavSim"); + return; + } if (navSelection) this.model.set("currentNav", navSelection); }, diff --git a/js/menus/templates/EDynamicMenuView.html b/js/menus/templates/EDynamicMenuView.html new file mode 100644 index 00000000..b0b5ade9 --- /dev/null +++ b/js/menus/templates/EDynamicMenuView.html @@ -0,0 +1 @@ +dynamic calculations \ No newline at end of file diff --git a/js/menus/templates/ESetupMenuView.html b/js/menus/templates/ESetupMenuView.html new file mode 100644 index 00000000..c14ccd9c --- /dev/null +++ b/js/menus/templates/ESetupMenuView.html @@ -0,0 +1 @@ +boundaries \ No newline at end of file diff --git a/js/menus/templates/EStaticMenuView.html b/js/menus/templates/EStaticMenuView.html new file mode 100644 index 00000000..3eade527 --- /dev/null +++ b/js/menus/templates/EStaticMenuView.html @@ -0,0 +1 @@ +static calculations \ No newline at end of file diff --git a/js/menus/templates/MDynamicMenuView.html b/js/menus/templates/MDynamicMenuView.html new file mode 100644 index 00000000..bfb4eada --- /dev/null +++ b/js/menus/templates/MDynamicMenuView.html @@ -0,0 +1 @@ +dynamics \ No newline at end of file diff --git a/js/menus/templates/MSetupMenuView.html b/js/menus/templates/MSetupMenuView.html new file mode 100644 index 00000000..1edc0e9d --- /dev/null +++ b/js/menus/templates/MSetupMenuView.html @@ -0,0 +1 @@ +setup, boundary conditions, physics \ No newline at end of file diff --git a/js/menus/templates/MStaticMenuView.html b/js/menus/templates/MStaticMenuView.html new file mode 100644 index 00000000..e7a63db0 --- /dev/null +++ b/js/menus/templates/MStaticMenuView.html @@ -0,0 +1 @@ +statics \ No newline at end of file diff --git a/js/menus/templates/OptimizationMenuView.html b/js/menus/templates/OptimizationMenuView.html index 5c68467d..65d4345f 100644 --- a/js/menus/templates/OptimizationMenuView.html +++ b/js/menus/templates/OptimizationMenuView.html @@ -1 +1 @@ -input stiffness requirements of structure \ No newline at end of file +input goals \ No newline at end of file diff --git a/js/menus/templates/PhysicsMenuView.html b/js/menus/templates/PhysicsMenuView.html deleted file mode 100644 index ab8e35ef..00000000 --- a/js/menus/templates/PhysicsMenuView.html +++ /dev/null @@ -1,5 +0,0 @@ -world physics: gravity, global forces -<br/><br/> -part connection stiffness -<br/><br/> -ground/fixed/boundary conditions definition \ No newline at end of file diff --git a/js/plists/PList.js b/js/plists/PList.js index c01abc06..6bb33bd9 100644 --- a/js/plists/PList.js +++ b/js/plists/PList.js @@ -14,9 +14,16 @@ define(['three'], function(THREE){ part:"Part", script:"Script" }, - navSim:{ - physics:"Physics", - part:"Part", + electronicNavSim:{ + eSetup:"Connectivity", + eStatic:"Statics", + eDynamic:"Dynamics", + optimize:"Optimize" + }, + mechanicalNavSim:{ + mSetup:"Setup", + mStatic:"Statics", + mDynamic:"Dynamics", optimize:"Optimize" }, navAssemble:{ @@ -24,13 +31,14 @@ define(['three'], function(THREE){ cam: "Process", animate:"Preview" }, - navComposite:{ - composite:"Composite Editor" - }, navComm:{ setupComm: "Setup", send: "Send" }, + //maybe do something different here? + navComposite:{ + composite:"Composite Editor" + }, navMaterial:{ materialEditor: "Material Editor" } diff --git a/js/three/FillGeometry.js b/js/three/FillGeometry.js index 0e5aacaa..8fcf1f8b 100644 --- a/js/three/FillGeometry.js +++ b/js/three/FillGeometry.js @@ -5,7 +5,7 @@ define(['three', 'underscore', 'backbone', 'lattice', 'threeModel'], function(THREE, _, Backbone, lattice, three){ - return Backbone.Model.extend({ + var FillGeometry = Backbone.Model.extend({ defaults: { filename: "No File Loaded", @@ -128,5 +128,7 @@ define(['three', 'underscore', 'backbone', 'lattice', 'threeModel'], three.render(); } }); + + return new FillGeometry(); }); -- GitLab