DeletedUser43776
Guest
- Explicacion de para que sirve: Para saber de que pueblos apoyando a un pueblo son los que estan mas cerca y mas lejos
- Como hacerlo funcionar: Plaza de reuniones -> Tropas
- Nombre de la entrada: El que mas os guste
- URL de imagen: --
- URL de destino: --
Código:
javascript:
/*Calcular distancia entre dos pueblos*/
function calcularDistancia(str1, str2){
var coord_x1;
var coord_y1;
var coord_x2;
var coord_y2;
var res;
str1_aux = str1.split('(')[1];
str1_aux = str1_aux.split('|');
coord_x1 = parseInt(str1_aux[0]);
coord_y1 = parseInt(str1_aux[1].split(')')[0]);
coord_x2 = parseInt(str2.split('|')[0]);
coord_y2 = parseInt(str2.split('|')[1]);
res = Math.sqrt(Math.pow(Math.abs(coord_x1 - coord_x2), 2) + Math.pow(Math.abs(coord_y1 - coord_y2), 2));
return res.toFixed(2);
}
/*Ordenar diccionario con distancias*/
function sortJsObject(some_dict) {
var sortable = [];
for (var vehicle in some_dict) {
sortable.push([vehicle, some_dict[vehicle]]);
}
sortable.sort(function(a, b) {
return a[1] - b[1];
});
return sortable;
}
var doc = document;
var nombre, nombre_aux, nombre_pueblo;
var partes;
var dist;
var tabla_apoyos = doc.getElementById('units_home');
var tablas = doc.getElementsByClassName("box menu nowrap");
var my_dict = {};
/*Sacar las coordenadas del pueblo actual*/
coords = tablas[0].rows[0].cells[3].innerHTML;
partes = coords.split('(')[1];
coords_pueblo_actual = partes.split(')')[0];
for (var r = 2, n = tabla_apoyos.rows.length-2; r < n; r++) {
nombre = tabla_apoyos.rows[r].cells[0].innerHTML;
nombre = nombre.split('\">')[2];
nombre_aux = nombre.split("<")[0];
dist = calcularDistancia(nombre_aux, coords_pueblo_actual);
my_dict[nombre_aux] = dist;
}
my_list = sortJsObject(my_dict);
var texto_result = '';
for (var i = 0; i < my_list.length; i++){
texto_result += my_list[i][0];
texto_result += ' ---- Distancia: ';
texto_result += my_list[i][1];
texto_result += '<br>';
}
var popup = window.open("about:blank", "Extractor de coordenadas", "width=380,height=500, top=85,left=50, scrollbars=1");
popup.document.open('text/html','replace');
popup.document.write(texto_result);
popup.document.close();