diff --git a/index.html b/index.html index 4166764f2bb34618f8bc671e20ffde28ecdf71c3..a79f706153fd2415207fc024e58ef8add7b6723c 100644 --- a/index.html +++ b/index.html @@ -423,18 +423,24 @@ <div class="indent"> Mesh Material: <div class="indent"> - <label class="radio"> - <input name="colorMode" value="color" data-toggle="radio" class="custom-radio" type="radio"><span class="icons"><span class="icon-unchecked"></span><span class="icon-checked"></span></span> - Colored Material + <label class="checkbox" for="meshVisible"> + <input id="meshVisible" data-toggle="checkbox" class="custom-checkbox layersSelector" type="checkbox"><span class="icons"><span class="icon-unchecked"></span><span class="icon-checked"></span></span> + Mesh Visible </label> - <div id="coloredMaterialOptions" class="indent"> - <label>Color 1 (rgb hex): </label><input id="color1" value="" placeholder="" class="hexVal form-control" type="text"><br/> - <label>Color 2 (rgb hex): </label><input id="color2" value="" placeholder="" class="hexVal form-control" type="text"><br/> + <div id="meshMaterialOptions"> + <label class="radio"> + <input name="colorMode" value="color" data-toggle="radio" class="custom-radio" type="radio"><span class="icons"><span class="icon-unchecked"></span><span class="icon-checked"></span></span> + Colored Material + </label> + <div id="coloredMaterialOptions" class="indent"> + <label>Color 1 (rgb hex): </label><input id="color1" value="" placeholder="" class="hexVal form-control" type="text"><br/> + <label>Color 2 (rgb hex): </label><input id="color2" value="" placeholder="" class="hexVal form-control" type="text"><br/> + </div> + <label class="radio"> + <input name="colorMode" value="normal" data-toggle="radio" class="custom-radio" type="radio"><span class="icons"><span class="icon-unchecked"></span><span class="icon-checked"></span></span> + Face Normals Material + </label> </div> - <label class="radio"> - <input name="colorMode" value="normal" data-toggle="radio" class="custom-radio" type="radio"><span class="icons"><span class="icon-unchecked"></span><span class="icon-checked"></span></span> - Face Normals Material - </label> </div><br/> Edges: <div class="indent"> diff --git a/js/controls.js b/js/controls.js index f7735561ad15d1c688f2645a443b3d357a81dc7d..debd38c55d48187be670c8630df42cfe7d9902db 100644 --- a/js/controls.js +++ b/js/controls.js @@ -119,6 +119,13 @@ function initControls(globals){ globals.model.updateEdgeVisibility(); }); + setCheckbox("#meshVisible", globals.meshVisible, function(val){ + globals.meshVisible = val; + globals.model.updateMeshVisibility(); + if (globals.meshVisible) $("#meshMaterialOptions").show(); + else $("#meshMaterialOptions").hide(); + }); + function setButtonGroup(id, callback){ $(id+" a").click(function(e){ e.preventDefault(); diff --git a/js/globals.js b/js/globals.js index fe6a08a987053d14c6654a64ce94758bfc9941ce..6c8b9b752c490fdf8f15ffc09f443efd08999dc2 100644 --- a/js/globals.js +++ b/js/globals.js @@ -14,6 +14,7 @@ function initGlobals(){ color1: "ec008b", color2: "dddddd", edgesVisible: true, + meshVisible: true, //flags fixedHasChanged: false, diff --git a/js/model.js b/js/model.js index 2ac62c3f3059da5a37129cebfaff418f8e3f20c0..1459fce85ba8bb1cbd120363c06b4bb5ba60786e 100644 --- a/js/model.js +++ b/js/model.js @@ -27,6 +27,10 @@ function initModel(globals){ } } + function updateMeshVisibility(){ + object3D.visible = globals.meshVisible; + } + var geometry = new THREE.Geometry(); geometry.dynamic = true; var object3D = new THREE.Mesh(geometry, material); @@ -231,6 +235,7 @@ function initModel(globals){ getObjectsToIntersect: getObjectsToIntersect, setMeshMaterial: setMeshMaterial, updateEdgeVisibility: updateEdgeVisibility, + updateMeshVisibility: updateMeshVisibility, getGeometry: getGeometry } } \ No newline at end of file