diff --git a/js/menus/EStaticMenuView.js b/js/menus/EStaticMenuView.js index a35e97df12ae3b67dda052ecb35f8723333912f7..2ce090b74164eb4d2ca0102e71abe1f473ae6ee4 100644 --- a/js/menus/EStaticMenuView.js +++ b/js/menus/EStaticMenuView.js @@ -25,7 +25,7 @@ define(['jquery', 'underscore', 'menuParent', 'eSimPlist', 'text!eStaticMenuTemp _calcCapacitance: function(e){ e.preventDefault(); - if (this._checkGroupData("voltage")) lattice.calcCapacitance(); + if (this._checkGroupData("voltage") && !isNaN(parseFloat(eSim.get("dielectricConst")))) lattice.calcCapacitance(); else console.warn("voltage data missing"); }, diff --git a/js/menus/NavViewMenu.js b/js/menus/NavViewMenu.js index 0b618f6a33bfa0c65a92fa85f0b585d04e414be4..95787de6d9109da0ec4c03adfc5c2303f0cd4402 100644 --- a/js/menus/NavViewMenu.js +++ b/js/menus/NavViewMenu.js @@ -3,14 +3,14 @@ */ -define(['jquery', 'underscore', 'backbone', 'text!navViewMenuTemplate'], function($, _, Backbone, template){ +define(['jquery', 'underscore', 'backbone', 'plist', 'text!navViewMenuTemplate'], function($, _, Backbone, plist, template){ return Backbone.View.extend({ el: "#navViewMenu", events: { - "click a.boolProperty": "_makeSelection", + "click a": "_makeSelection", "click #reset3DView": "_reset3DNavigation" }, @@ -25,8 +25,12 @@ define(['jquery', 'underscore', 'backbone', 'text!navViewMenuTemplate'], functio var $target = $(e.target); if ($target.prop("tagName") == "SPAN") $target = $target.parent(); var property = $target.data("property"); + var value = $target.data("value"); var owner = this._getPropertyOwner($target); - if (owner) owner.set(property, !owner.get(property)); + if (owner) { + if (value) owner.set(property, value); + else owner.set(property, !owner.get(property)); + } }, _getPropertyOwner: function($target){ @@ -41,7 +45,7 @@ define(['jquery', 'underscore', 'backbone', 'text!navViewMenuTemplate'], functio }, render: function(){ - this.$el.html(this.template(this.model.toJSON())); + this.$el.html(this.template(_.extend(this.model.toJSON(), plist))); var self = this; _.each($(".boolProperty"), function(item){ diff --git a/js/menus/templates/EStaticMenuView.html b/js/menus/templates/EStaticMenuView.html index 49ce039a86c8a03a2cb913054fb1953abad32296..1978bf581b34f749cc5b4028e2bd8dc5970f11ac 100644 --- a/js/menus/templates/EStaticMenuView.html +++ b/js/menus/templates/EStaticMenuView.html @@ -1,4 +1,5 @@ <% if(conductorGroups && conductorGroups.length > 0){ %> + Dielectric Permittivity (k): <input data-property="dielectricPerm" value="<%= dielectricPerm %>" placeholder="k" class="form-control floatInput eSim voltageInput" type="text"><br/> <label class="radio"> <input type="radio" <% if (visibleConductorGroup == -2){ %>checked<% } %> name="visibleConductorGroup" value="-2" data-toggle="radio" class="custom-radio eSim"><span class="icons"><span class="icon-unchecked"></span><span class="icon-checked"></span></span> Show Everything @@ -32,6 +33,7 @@ <% }); %> </ul> </div><br/><br/> + <div class="inlineSwatch capacitance"></div>Capacitance:<br/> <div class="inlineSwatch inductance"></div>Inductance:<br/><br/> <a href="#" id="calcCapacitance" class="btn btn-block btn-lg btn-default"><% if(globalCapacitance){ %>Re-<% } %>Calculate Capacitance</a><br/> diff --git a/js/menus/templates/NavViewMenu.html b/js/menus/templates/NavViewMenu.html index a6890291b38d01402f6f5cedec1de1508433145a..db5339f909de7e1ac7fa10ad4f59909edf7ed4d5 100644 --- a/js/menus/templates/NavViewMenu.html +++ b/js/menus/templates/NavViewMenu.html @@ -12,6 +12,8 @@ <ul class="dropdown-menu"> <li><a class="appState boolProperty" data-property="basePlaneIsVisible" href="#">Sketch Plane</a></li> <li><a class="appState boolProperty" data-property="highlighterIsVisible" href="#">Hover Tool</a></li> + <li><a class="appState boolProperty" data-property="axesAreVisible" href="#">Axes</a></li> + <li><a id="reset3DView" href="#">Reset 3D Navigation</a></li> </ul> </li> <li class="dropdown-submenu"> @@ -22,9 +24,10 @@ </ul> </li> <li class="dropdown-submenu"> - <a tabindex="-1">3D<span class="pull-right fui-arrow-right"></span></a> + <a tabindex="-1">Cells<span class="pull-right fui-arrow-right"></span></a> <ul class="dropdown-menu"> - <li><a class="appState boolProperty" data-property="axesAreVisible" href="#">Axes</a></li> - <li><a id="reset3DView" href="#">Reset 3D Navigation</a></li> + <% _.each(allCellModes, function(mode, key){ %> + <li><a class="appState" data-property="cellMode" data-value="<%= key %>" href="#"><% if (cellMode == key) { %><span class="fui-check"></span><% } %><%= mode %></a></li> + <% }); %> </ul> </li> \ No newline at end of file diff --git a/js/plists/PList.js b/js/plists/PList.js index 32d4046d4c41128fe27d1421c8cf5e8f1aa828e5..b5a156d7f091fc0b0e4a681881eb747e55720962 100644 --- a/js/plists/PList.js +++ b/js/plists/PList.js @@ -16,13 +16,13 @@ define(['three'], function(THREE){ }, electronicNavSim:{ eSetup:"Connectivity", - materialProperties: "Materials", +// materialProperties: "Materials", eStatic:"Statics", eDynamic:"Dynamics" }, mechanicalNavSim:{ mSetup:"Setup", - materialProperties: "Materials", +// materialProperties: "Materials", mStatic:"Statics", mDynamic:"Dynamics" }, @@ -95,6 +95,13 @@ define(['three'], function(THREE){ kelvin: {face: null} }, + allCellModes:{//supercell, cell, part, node, beam + supercell: "Hierarchical Mode", + cell: "Voxel Mode", + part: "Part Mode", + hide: "Hide Cells" + }, + allMaterialTypes:{ octa:{ face: 'mechanical', diff --git a/js/simulation/electronics/eSim.js b/js/simulation/electronics/eSim.js index 1373adf48feb42b58c496f45babf3da0010089bd..04af98517183419ed446fcde61d0d20721b70ced 100644 --- a/js/simulation/electronics/eSim.js +++ b/js/simulation/electronics/eSim.js @@ -13,7 +13,8 @@ define(['underscore', 'backbone'], function(_, Backbone){ globalCapacitance: null, globalInductance: null, voltageUnits: "1", - currentUnits: "0.001" + currentUnits: "0.001", + dielectricPerm: 1.00 }