diff --git a/js/main.js b/js/main.js index 64760189de7c1ea53c170b157fa75551f29168c8..2e3812e3338c3003bf6a840d837373f8b2cf00b3 100644 --- a/js/main.js +++ b/js/main.js @@ -68,6 +68,7 @@ require.config({ //materials materials: 'materials/DMAMaterials', electronicMaterials: 'materials/ElectronicMaterials', + mechanicalMaterials: 'materials/MechanicalMaterials', //UI navbar: 'menus/Navbar', diff --git a/js/materials/ElectronicMaterials.js b/js/materials/ElectronicMaterials.js index fce8178b496c924e329575af94cbed2945fd767a..9ff1f5de242da4a677ff6fb73c9ca236715b1d5c 100644 --- a/js/materials/ElectronicMaterials.js +++ b/js/materials/ElectronicMaterials.js @@ -6,7 +6,7 @@ define(['underscore', 'three', 'appState', 'plist', 'materials'], function(_, THREE, appState, plist, DMAMaterials){ function ElectronicMaterials(){ - DMAMaterials.call(this, plist.allMaterialTypes.cube.gik); + DMAMaterials.call(this, plist.allMaterials.electronic); } ElectronicMaterials.prototype = Object.create(DMAMaterials.prototype); diff --git a/js/materials/MechanicalMaterials.js b/js/materials/MechanicalMaterials.js new file mode 100644 index 0000000000000000000000000000000000000000..4023695ee14eabef0a5d86c78fa952f2e5c97b90 --- /dev/null +++ b/js/materials/MechanicalMaterials.js @@ -0,0 +1,19 @@ +/** + * Created by aghassaei on 6/4/15. + */ + + +define(['underscore', 'three', 'appState', 'plist', 'materials'], function(_, THREE, appState, plist, DMAMaterials){ + + function MechanicalMaterials(){ + DMAMaterials.call(this, plist.allMaterials.mechanical); + } + MechanicalMaterials.prototype = Object.create(DMAMaterials.prototype); + + var material = new MechanicalMaterials(); + + return { + changeMaterials: material.changeMaterials, + materials: material.materials + } +}); \ No newline at end of file diff --git a/js/menus/PartMenuView.js b/js/menus/PartMenuView.js index 9852a6578e0c7234df495e347c6bdf8b6b9692ba..83a674e011c765411c1d4ad2fe470032c1fc0745 100644 --- a/js/menus/PartMenuView.js +++ b/js/menus/PartMenuView.js @@ -34,12 +34,12 @@ define(['jquery', 'underscore', 'menuParent', 'plist', 'lattice'], function($, _ <br/><br/>--><br/>\ <% if (allMaterialTypes[cellType][connectionType]){ %> \ Materials:<br/>\ - <% _.each(_.keys(allMaterialTypes[cellType][connectionType]), function(key){ %>\ + <% _.each(_.keys(allMaterials[allMaterialTypes[cellType][connectionType]]), function(key){ %>\ <label class="radio colorSwatches">\ <input type="radio" <%if (key == materialType){ %>checked<%}%> name="materialType" value="<%= key %>" data-toggle="radio" class="custom-radio lattice"><span class="icons"><span class="icon-unchecked"></span><span class="icon-checked"></span></span>\ <div class="materialColorSwatch">\ - <div style="background-color:<% if(realisticColorScheme){ %><%= allMaterialTypes[cellType][connectionType][key].color %><% }else{ %><%= allMaterialTypes[cellType][connectionType][key].altColor %><% } %>"></div>\ - <span><%= allMaterialTypes[cellType][connectionType][key].name %></span></div>\ + <div style="background-color:<% if(realisticColorScheme){ %><%= allMaterials[allMaterialTypes[cellType][connectionType]][key].color %><% }else{ %><%= allMaterials[allMaterialTypes[cellType][connectionType]][key].altColor %><% } %>"></div>\ + <span><%= allMaterials[allMaterialTypes[cellType][connectionType]][key].name %></span></div>\ </label>\ <% }); %>\ <br/>\ diff --git a/js/models/PList.js b/js/models/PList.js index 071f2fee911600a67ce58227e4e357aae62ace7c..2b02bf9be25f96ff9b892e83ede656c5b34e961e 100644 --- a/js/models/PList.js +++ b/js/models/PList.js @@ -29,10 +29,10 @@ define(['three'], function(THREE){ allCellTypes: { octa:"Octahedron", - tetra: "Tetrahedron (Coming Soon)", - cube:"Cube", - truncatedCube:"Cuboctahedron", - kelvin:"Kelvin" + tetra: "Tetrahedron (Coming Soon)", + cube:"Cube", + truncatedCube:"Cuboctahedron", + kelvin:"Kelvin" }, allConnectionTypes: { octa: {face:"Face", edgeRot:"Edge", vertex:"Vertex"},//edge:"Edge", freeformFace:"Freeform Face" @@ -74,14 +74,22 @@ define(['three'], function(THREE){ allMaterialTypes:{ octa:{ - face: null, - edge: null, - edgeRot: null, - vertex: null + face: 'mechanical', + edge: 'mechanical', + edgeRot: 'mechanical', + vertex: 'mechanical' }, - tetra: {vertex: null}, - cube: {face: null, - gik: { + tetra: {vertex: 'mechanical'}, + cube: { + face: 'mechanical', + gik: 'electronic' + }, + truncatedCube: {face: 'mechanical'}, + kelvin: {face: 'mechanical'} + }, + + allMaterials:{ + electronic:{ brass:{ name: "Brass", color: "#b5a642", @@ -121,10 +129,19 @@ define(['three'], function(THREE){ //857B64 //FDE2D9 //D77948 - } }, - truncatedCube: {face: null}, - kelvin: {face: null} + mechanical:{ + rigid:{ + name: "Rigid", + color: "#b5a642", + altColor: "#857B64" + }, + flexure: { + name: "Flexure", + color: "#fef1b5", + altColor: "#ecf0f1" + } + } }, allMachineTypes:{