Menu enhancements and added find feature
This commit is contained in:
@ -1,14 +1,58 @@
|
||||
$(document).ready(function() {
|
||||
// Controls menu hide/show
|
||||
$('#hotdog').click(function(){
|
||||
$('#controls').toggleClass("active");
|
||||
});
|
||||
|
||||
// Reset view
|
||||
$('.reset-container').click(function(){ reset_view(); });
|
||||
$('#submitfindbyname').click( function() {
|
||||
var selected = $('#findbyselect option:selected').text();
|
||||
zoomfocus(selected);
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
function populateUserFields() {
|
||||
//Populate find by select dropdown
|
||||
var types = [];
|
||||
var checkboxes = document.getElementsByName("objtype");
|
||||
for (var type in checkboxes) {
|
||||
if(checkboxes[type].checked) {
|
||||
types[type] = checkboxes[type].value;
|
||||
}
|
||||
|
||||
}
|
||||
var option = '';
|
||||
for (var type in types){
|
||||
for ( var key in listobjects(types[type]) ){
|
||||
option += '<option value="'+ escapeHTML(key) + '">' + escapeHTML(key) + '</option>';
|
||||
}
|
||||
}
|
||||
|
||||
$('#findbyselect').html(option);
|
||||
}
|
||||
|
||||
function openTab(evt,tabName) {
|
||||
var i, x, tablinks;
|
||||
x = document.getElementsByClassName("tools");
|
||||
x = document.getElementsByClassName("wvg-tools");
|
||||
for (i = 0; i < x.length; i++) {
|
||||
x[i].style.display = "none";
|
||||
}
|
||||
tablinks = document.getElementsByClassName("tablink");
|
||||
tablinks = document.getElementsByClassName("wvg-tablink");
|
||||
for (i = 0; i < x.length; i++) {
|
||||
tablinks[i].className = tablinks[i].className.replace(" tab-active", "");
|
||||
tablinks[i].className = tablinks[i].className.replace(" wvg-tab-active", "");
|
||||
}
|
||||
document.getElementById(tabName).style.display = "block";
|
||||
evt.currentTarget.className += " tab-active";
|
||||
evt.currentTarget.className += " wvg-tab-active";
|
||||
}
|
||||
|
||||
function escapeHTML(text)
|
||||
{
|
||||
var chr = { '"': '"', '&': '&', '<': '[', '>': ']' };
|
||||
function abc(a)
|
||||
{
|
||||
return chr[a];
|
||||
}
|
||||
return text.replace(/[\"&<>]/g, abc);
|
||||
}
|
||||
|
@ -176,4 +176,41 @@ function render () {
|
||||
}
|
||||
|
||||
|
||||
function listobjects(type) {
|
||||
var objects = {};
|
||||
|
||||
for (var key in jsonEmpire) {
|
||||
area=jsonEmpire[key];
|
||||
for (var key2 in area[type]) {
|
||||
object = area[type][key2];
|
||||
objectname = object.name;
|
||||
objects[object.name] = object;
|
||||
|
||||
}
|
||||
}
|
||||
return objects;
|
||||
}
|
||||
|
||||
function zoomfocus(name) {
|
||||
|
||||
var types = ['planets','stations'];
|
||||
for (var type in types){
|
||||
var objects = listobjects(types[type]);
|
||||
for ( var key in objects ) {
|
||||
if (escapeHTML(key) == name) {
|
||||
var object = objects[key];
|
||||
controls.target.x = object.x;
|
||||
controls.target.y = object.y;
|
||||
controls.target.z = object.z;
|
||||
var focus = new THREE.Vector3( object.x, object.y, object.z );
|
||||
var vantage = new THREE.Vector3( 5, 60 , 150 );
|
||||
focus.add(vantage);
|
||||
camera.position.set(focus.x,focus.y,focus.z);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user