eueueueueu.eu : SqueakDistancias

HomePage :: Squeak :: Ejercicios :: Este sitio

Calcular distancias en un mapa


Vamos a hacer un proyecto no muy complicado, un único guión de una o dos líneas es todo lo que tendremos que programar.
Para seguir el ejercicio necesitamos un mapa o imagen de satélite que tengan escala.

Yo he capturado una pantalla de Google Maps, con un programa de retoque fotográfico he recortado la captura y la he guardado.
Según las condiciones de uso de Google Maps se pueden utilizar mapas e imágenes sólo para uso privado, no comercial. Entiendo que se me permite ilustrar este ejemplo con la imagen capturada ya que este es un sitio personal y sin ánimo de lucro. Si hubiera algún problema me vería obligado ha realizar mi propio mapa y con ello dejaría de publicitar de forma indirecta la web mencionada

Insertamos la imagen del mapa
Abrimos el catálogo de objetos y arrastramos en el mundo una línea.
Le cambiamos el color y el grosor a la línea:



Abrimos el visor de la línea y creamos una variable que llamaremos factor



Mostramos los controles de la línea:



Colocamos la línea sobre la escala del mapa, para ello moveremos la línea arrastrándola y soltándola y la colocaremos bien usando los circulos amarillos:

longitud

Ahora vamos a hacer una sencilla regla de tres para sabar la relación entre los puntos (pixels) de la pantalla y la escala, en nuestro ejemplo vemos que 200 metros equivalen a 103 puntos, por lo que cada punto equivale a 1,94 metros. Vamos a modificar el valor de la variable factor a este resultado:

variable

Añadimos a nuestro proyecto un texto que usaremos para mostrar la distancia entre dos puntos. Le cambiamos el color, borde,... y le asignamos el nombre de distancia:

distancia

El guión
Sigue los pasos que se muestran en la animación:




Resultado final
Ahora podemos mover la línea usando los controles amarillos, los círculos, y si tenemos el guión latiendo veremos como se calcula de forma automática la longitud de la línea:

distancia


Mejorando nuestro programa

Vamos a modificar nuestro programa de forma que podamos medir recorridos.
Para ello cogemos del catálogo de objetos un conector de la categoría Conectores.
Un conector permite conectar objetos entre si. De Provisiones cogemos una elipse y le damos un tamaño pequeño, pero no demasiado. Creamos una copia de la elipse y ahora movenos los cuadrados rojos del conector hasta conectar las dos elipses. Veremos que cuando acercamos el extremo del conector a la elipse aparecen puntos de conexión en la misma. Si hacemos demasiado pequeña la elipse dichos puntos no nos permitirán moverla.
Los conectores pueden deformarse, si pulsamos sobre su línea y arrastramos el ratón se crea un nuevo vértice. Si tenemos dificultad creando un nuevo vértice podemos probar pulsando además la tecla mayúsculas (shift).
Si abrimos el visor del conector veremos que en la categoría geometría aparece una propiedad llamada totalLength que usaremos en nuestro guión.

El guión quedará como se muestra en la siguiente imagen:

recorrido



Material


Una imagen con la que podéis practicar:
Estepona



CategorySqueak

There are no comments on this page. [Add comment]

Creative Commons Licenseobra bajo una licencia de Creative Commons. Valid XHTML 1.0 Transitional :: Valid CSS :: Powered by Wikka Wakka Wiki trunk
Page was generated in 0.0857 seconds