Continuando con nuestro tutorial de «Mapas interactivos con HTML5» , esta es la sección que corresponde a los elementos que conforman el Mapa Estadístico.
En post anteriores ya se estableció la estructura del proyecto, se creo el documento HTML5, codigo CSS, imágenes y el archivo «elecciones.js» , ademas de crearse los mapas de las provincias utilizando shapes [Parte1, Part2, Parte3 ], en esta sección debemos crear los diferentes objetos que componen nuestro gráfico en el canvas.
Elementos.
Cada una de nuestras provincias, las cuales ya definimos como pintarlas en un post anterior[3], es un objeto con las siguientes propiedades:
name: Nombre de la provincia
population: población habilitada para votar
gui: es una función que corresponde al tutorial3, pintados de los shapes, mapas de cada provincia.
color_release: color de la provincia cuando el mouse no esta dentro de las coordenadas del shape
color_hover: Color de la provincia cuando el mouse esta dentro de las coordenadas del shape.
function localidad( name, population , gui , color_release , color_hover ) { this.name = name ; this.gui = gui ; this.population = population + ' Hab.'; this.color_release = color_release; this.color_hover = color_hover; this.color = color_release ; }
Tenemos dos corruptos, digo candidatos políticos 🙂 para las elecciones, cada uno tiene las siguientes propiedades.
X,Y : Corresponden a las coordenadas de la esquina superior izquierda de cada recuadro amarillo
name: Nombre del corrupto in extremis.
sigla: Las iniciales del partido.
image: es un objeto javascript image.
votos: la cantidad de votos obtenidos.
function candidato( x , y , name , sigla , image , votos ) { this.x = x; this.y = y; this.name = name; this.sigla = sigla; this.foto = new Image(); this.foto.src = image; this.votos = votos ; }
Los votos nulos y blancos se almacenaran en un objeto llamado NoData, es similar al objeto candidato, la diferencia es que no tiene imagen y tiene dos campos para almacenar votos en lugar de uno, los votos nulos y blancos.
function NoData( x, y , nulos, blancos ) { this.x = x; this.y = y; this. nulos = nulos ; this.blancos= blancos ; }
Cuando se presiona una provincia, se ejecuta un evento ajax en espera de nuevos datos, mientras esto ocurre, se debe alertar al usuario y esto se lo hace con una pequeña ventana de alerta.
function Process( x , y ) { this.x = x; this.y = y; this.imageLoad = new Image(); this.imageLoad.src = 'images/wait.png'; }
Para terminar, se define un objeto para pintar el titulo.
function Title() { this.x = 700; this.y = 80; this. name = "Elecciones Beni 2013" ; }
Fin de la Cuarta Parte
Control de versiones: Se llama control de versiones a la gestión de los diversos cambios que se realizan sobre los eleme[...]
Una procedimiento almacenado es un conjunto de sentencias de SQL que se pueden almacenar en el servidor, de esta forma n[...]
BorderPane es un layout que distribuye los nodos hijos en 5 posiciones TOP, LEFT, BOTTOM, RIGHT y CENTER Los nodos hijos[...]
En ocasiones los administradores de sitios web experimentan problemas de lentitud en su carga o en el peor de los casos[...]
El diseño web adaptable (Responsive Web Design) va evolucionando como una filosofía de diseño y desarrollo de paginas we[...]
El tema que trataremos en este post es la implementación de una arquitectura de temas dinámicos (theming) dentro de un p[...]