SlideShare una empresa de Scribd logo
© Juan Quemada, DIT, UPM
Geolocalización en HTML5
1
Juan Quemada, DIT, UPM
© Juan Quemada, DIT, UPM
HTML5 puede soportar geolocalización
n En todo tipo de clientes
w PCs, móviles tabletas, .....
El interfaz de geolocaclización
n da acceso tambien a otros sensores
w Brujula, acelerometro, .....
Geolocalización y Sensores
2
Juan Quemada, DIT, UPM
© Juan Quemada, DIT, UPM
La geolocalización se realiza siguiendo jerarquia de consultas
n GPS -> antena WIFI -> antena GSM o 3G -> IP fija -> .....
w Se devuelve la respuesta más precisa
La geolocalización está accesible en del objeto navigator.geolocation
n con método getCurrentPosition(successFunction, errorFunction)
w Permite conocer
n Latitud y longitud en formato decimal
n Altitud y precisión de la altitud
n Dirección y velocidad
Norma y tutoriales
n http://dev.w3.org/geo/api/spec-source.html
n http://dev.opera.com/articles/view/how-to-use-the-w3c-geolocation-api/
n http://code.google.com/apis/maps/index.html
OJO! Geolocalización puede no funcionar por restricciones de seguridad
n Usar el navegador Firefox para probar los ejemplos geolocalizados en local
Geolocalización
3
Juan Quemada, DIT, UPM
<!DOCTYPE html>
<html>
<head>
<title>Example of W3C Geolocation API</title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<script type="text/javascript">
if (navigator.geolocation) { //Check if browser supports W3C Geolocation API
navigator.geolocation.getCurrentPosition (successFunction, errorFunction);
} else { alert('Geolocation is not supported in this browser.'); }
function successFunction(position) {
var lat = position.coords.latitude;
var long = position.coords.longitude;
alert('Your latitude is :'+lat+' and longitude is '+long);
}
function errorFunction(position) { alert('Error!'); }
</script>
</head>
<body>
<p>If your browser supports Geolocation, you should get an alert with your coordinates.</p>
<p>Read the <a href="http://dev.opera.com">Dev.Opera</a> article <a
href="http://dev.opera.com/articles/view/how-to-use-the-w3c-geolocation-api/">"How
to use the W3C Geolocation API"</a>.
</body>
</html> © Juan Quemada, DIT, UPM
Ejemplo
Geolocation
4
Juan Quemada, DIT, UPM
© Juan Quemada, DIT, UPM
Aplicación HTML5 geolocalizada en
Google Maps
5
Juan Quemada, DIT, UPM
© Juan Quemada, DIT, UPM
Geolocalización con gmaps.js
Aplicacion de geolocalización
n Carga un mapa centrado en nuestra posición
w que se indica con un marcador
Usamos librería gmaps.js para acceso a Google Maps
n librería muy potente y sencilla de utilizar
w http://hpneo.github.io/gmaps/
n Se recomienda consultar documentación y ejemplos
n La librería de Google es bastante mas compleja
Se añade al mapa un manejador de eventos click/tap
n que calcula la ruta hasta el punto indicado
6
Juan Quemada, DIT, UPM
© Juan Quemada, DIT, UPM
Geo-mapa
7
Juan Quemada, DIT, UPM
© Juan Quemada, DIT, UPM
Geo-mapa
8
Juan Quemada, DIT, UPM
© Juan Quemada, DIT, UPM
Geo-mapa
9
Juan Quemada, DIT, UPM
© Juan Quemada, DIT, UPM
10
Juan Quemada, DIT, UPM
Estilo CSS multi-terminal
© Juan Quemada, DIT, UPM
HTML5 SVG: Scalable Vector
Graphics
11
Juan Quemada, DIT, UPM
Formato de representación de gráficos vectoriales
n Pueden cambiar de tamaño sin perdida de calidad
Recursos
n Galeria Wikimedia: http://commons.wikimedia.org/wiki/Category:SVGs_by_subject
n Editor SVG: http://svg-edit.googlecode.com/svn/branches/2.5.1/editor/svg-editor.html
n Tutorial: https://developer.mozilla.org/en-US/docs/Web/SVG
n Tutorial: http://www.w3schools.com/svg/
SVG: Scalable Vector Graphics
http://commons.wikimedia.org/wiki/File:Compass.svg
http://commons.wikimedia.org/wiki/SVG_examples
12
© Juan Quemada, DIT, UPMJuan Quemada, DIT, UPM
© Juan Quemada, DIT, UPM
Ejemplo “Ajuste SVG”
“Ajuste SVG” ilustra como reescalar una imagen SVG
n Las imagenes en SVG reescalan sin perder calidad
w porque son gráficos vectoriales
w tutorial: http://www.w3schools.com/svg/
n Las imágenes GIT, JPEG o PNG no reescalan bien
w porque tienen una resolución determinada
Esta WebApp tiene 2 botones: “+” y “-”
Cada vez que pulsamos uno de estos botones
n el tamaño de la imagen debe aumentar o disminuir un 10%
w según pulsemos “+” y “-”
13
Juan Quemada, DIT, UPM
© Juan Quemada, DIT, UPM
Ejemplo SVG
14
Juan Quemada, DIT, UPM
© Juan Quemada, DIT, UPM
Ejempo “Reloj SVG”
“Reloj SVG” genera un reloj sencillo con SVG
n El reloj se compone de
w Un círculo negro
w Tres lineas para las manecillas del reloj
SVG puede animarse con javaScript
n modificando la representación DOM del reloj
w Versión 1: las manecillas se mueven con transform
w https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/transform
w Version 2: Calcula las coordenadas de las manecillas
Se añade estilo CSS
n Mejora el aspecto y adapta al tamaño de la pantalla
15
Juan Quemada, DIT, UPM
© Juan Quemada, DIT, UPM
Reloj SVG
16
Juan Quemada, DIT, UPM
© Juan Quemada, DIT, UPM
SVG: Reloj animado
con “transform”
Juan Quemada, DIT, UPM
17
© Juan Quemada, DIT, UPM
Animar manecillas con coordenadas
Para animar las manecillas del reloj
n se incluye un script que cada segundo
w recalcula las coordenadas exteriores
n de las manecillas del reloj
n El secundero tiene una longitud de 50 pixels
n El minutero tiene una longitud de 40 pixels
n La manecilla horaria de 30 pixels
Las coordenadas x2, y2 de las manecillas de horas,
minutos y segundos se calculan con las funciones
n x2(tiempo, unidades_por_vuelta, x1, radio)
n y2(tiempo, unidades_por_vuelta, y1, radio)
18
Juan Quemada, DIT, UPM
© Juan Quemada, DIT, UPM
SVG: Reloj animado
con coordenadas
19
Juan Quemada, DIT, UPM
© Juan Quemada, DIT, UPM
Relojes con “estilo”
Usando CSS e imágenes se pueden diseñar
n Las capturas muestran pequeños cambios de diseño
w que cambian muy significativamente la apariencia del
reloj
n Hacer clic en estos URLs para verlos
w https://googledrive.com/host/0B48KCWfVwCIEMjFhUHM4d3FnSTg/09-clock_CSS.htm
w https://googledrive.com/host/0B48KCWfVwCIEMjFhUHM4d3FnSTg/10_clock_CSS_a.html
w https://googledrive.com/host/0B48KCWfVwCIEMjFhUHM4d3FnSTg/10_clock_CSS_b.htm
w https://googledrive.com/host/0B48KCWfVwCIEMjFhUHM4d3FnSTg/10_clock_CSS_c.htm
w https://googledrive.com/host/0B48KCWfVwCIEMjFhUHM4d3FnSTg/10_clock_CSS_d.htm
20
Juan Quemada, DIT, UPM
© Juan Quemada, DIT, UPM
SVG: Reloj con estilo CSS
21
Juan Quemada, DIT, UPM
Los objetos SVG se pueden definir también como objetos externos en XML
n Para importarlos con:
w <img>, <object>, <embed>, <iframe>
n Tutorial: http://tavmjong.free.fr/INKSCAPE/MANUAL/html/Web-Use.html
Objetos SVG
22
© Juan Quemada, DIT, UPMJuan Quemada, DIT, UPM
© Juan Quemada, DIT, UPM
Final del tema
Muchas gracias!
23
Juan Quemada, DIT, UPM

Más contenido relacionado

PDF
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
David Zapateria Besteiro
 
PDF
Javascript Módulo 5 - javascript sentencia, expresión, variable, función - Un...
David Zapateria Besteiro
 
PDF
Javascript - Módulo 4: Booleano, if/else, string, número, DOM, eventos e inte...
David Zapateria Besteiro
 
PDF
Javascript Módulo 5 - Bucles, Arrays. Funciones como objectos. Ámbitos. Cierr...
David Zapateria Besteiro
 
PDF
Javascript - Módulo 8: LocalStorage, iFrames, Origin policy y JSON
David Zapateria Besteiro
 
PDF
Introducción al Diseño web
ciwmx
 
PDF
2016 stop writing javascript frameworks by Joe Gregorio
David Zapateria Besteiro
 
PPTX
Dirigiendo y gestionando proyectos Big Data
Emilio del Prado
 
Javascript Módulo 7 - PROFUNDIZACIÓN EN ARRAYS, OBJETOS, PROPIEDADES, MÉTODOS...
David Zapateria Besteiro
 
Javascript Módulo 5 - javascript sentencia, expresión, variable, función - Un...
David Zapateria Besteiro
 
Javascript - Módulo 4: Booleano, if/else, string, número, DOM, eventos e inte...
David Zapateria Besteiro
 
Javascript Módulo 5 - Bucles, Arrays. Funciones como objectos. Ámbitos. Cierr...
David Zapateria Besteiro
 
Javascript - Módulo 8: LocalStorage, iFrames, Origin policy y JSON
David Zapateria Besteiro
 
Introducción al Diseño web
ciwmx
 
2016 stop writing javascript frameworks by Joe Gregorio
David Zapateria Besteiro
 
Dirigiendo y gestionando proyectos Big Data
Emilio del Prado
 

Destacado (20)

PDF
Ajax: Un nuevo enfoque - flisol2008
Juan Carbajal
 
PPTX
Desarrollo de Aplicaciones Web 2.0 con GWT
Ingenieria Informatica Empresarial
 
PDF
Presentación TEWC
Carlos A. Iglesias
 
PDF
Arquitectura del Web 2
Juan Quemada
 
PPT
Isabel: Reuniones, Clases y Congresos a través de Internet
Juan Quemada
 
PDF
0 entorno php
Carlos A. Iglesias
 
PDF
CSS
MARTINGVALLE
 
PDF
Entorno PHP
Carlos A. Iglesias
 
PDF
Google html5 Tutorial
jobfan
 
PPT
Vishub description Global Excursion
Juan Quemada
 
PDF
Introducción CSS
Carlos A. Iglesias
 
PPT
Herramientas para el desarrollo en plataformas móviles web
joycesita
 
PDF
Internet Ice091117
Juan Quemada
 
PDF
Introducción a los Frameworks CSS
Luis Miguel Martín
 
PDF
Fundamentos de CSS
Nicolas Navarro Rincón
 
PPT
Empresa 2.0
Juan Quemada
 
PPT
Nuevos retos de Internet: Movilidad y Cloud Computing
Juan Quemada
 
PDF
Human Interaction, Social Protocols and Collaborative Applications
Juan Quemada
 
PPT
Proyecto de Topicos II - HTML5
joycesita
 
PDF
GSI Research Group Presentation
Carlos A. Iglesias
 
Ajax: Un nuevo enfoque - flisol2008
Juan Carbajal
 
Desarrollo de Aplicaciones Web 2.0 con GWT
Ingenieria Informatica Empresarial
 
Presentación TEWC
Carlos A. Iglesias
 
Arquitectura del Web 2
Juan Quemada
 
Isabel: Reuniones, Clases y Congresos a través de Internet
Juan Quemada
 
0 entorno php
Carlos A. Iglesias
 
Entorno PHP
Carlos A. Iglesias
 
Google html5 Tutorial
jobfan
 
Vishub description Global Excursion
Juan Quemada
 
Introducción CSS
Carlos A. Iglesias
 
Herramientas para el desarrollo en plataformas móviles web
joycesita
 
Internet Ice091117
Juan Quemada
 
Introducción a los Frameworks CSS
Luis Miguel Martín
 
Fundamentos de CSS
Nicolas Navarro Rincón
 
Empresa 2.0
Juan Quemada
 
Nuevos retos de Internet: Movilidad y Cloud Computing
Juan Quemada
 
Human Interaction, Social Protocols and Collaborative Applications
Juan Quemada
 
Proyecto de Topicos II - HTML5
joycesita
 
GSI Research Group Presentation
Carlos A. Iglesias
 
Publicidad

Similar a Javascript - Módulo 9: Geolocalización en HTML5, Google maps, y SVG (20)

PPTX
Mapas digitales
Rubén Alcaraz Martínez
 
PPTX
Api geolocation
Edgar Fuentes
 
PDF
Geolocalización con Software Libre
Luis Antonio Burbano
 
PDF
Geolocalización con SW libre
campuspartyquito
 
PDF
Google Maps como modelo de negocio
GDG Lima
 
PPTX
HTML5 Geolocalizacion
Rodolfo Finochietti
 
PDF
Presentacion geolocalización
David Fernández Puentes
 
PDF
SIBW - TAC - Presentación - Daniel Díaz Salas
Daniel Díaz Salas
 
PDF
Html5+ccs3+js
Notempo 1320
 
PPT
Google Earth Maps Api Barcamp Quito 2009
Vicente Ordonez
 
PDF
Programación web con HTML5
Jorge del Casar
 
PDF
GDG DevFest Lighting Talks México
Juan José Rodriguez MsC.
 
PDF
Definición e implementación de soluciones basadas en APIs universales para la...
Pablo López Escobés
 
PDF
Html5 tips
Marco Villalta
 
PDF
SIBW - TAC - Trabajo - Daniel Díaz Salas
Daniel Díaz Salas
 
PDF
Geohabilitación de gestores contenidos: CMSMap
Pablo López Escobés
 
PPT
Google Earth Maps Api
BarCamp Quito
 
PPTX
API REST de Geoservicios de Esri y los Servicios estándar OGC Clásicos - JIID...
Esri
 
PDF
Comparación e implementación de liberías webmapping como herramienta de visua...
Golgi Alvarez
 
PDF
Google Maps como modelo de negocio
GDG Lima
 
Mapas digitales
Rubén Alcaraz Martínez
 
Api geolocation
Edgar Fuentes
 
Geolocalización con Software Libre
Luis Antonio Burbano
 
Geolocalización con SW libre
campuspartyquito
 
Google Maps como modelo de negocio
GDG Lima
 
HTML5 Geolocalizacion
Rodolfo Finochietti
 
Presentacion geolocalización
David Fernández Puentes
 
SIBW - TAC - Presentación - Daniel Díaz Salas
Daniel Díaz Salas
 
Html5+ccs3+js
Notempo 1320
 
Google Earth Maps Api Barcamp Quito 2009
Vicente Ordonez
 
Programación web con HTML5
Jorge del Casar
 
GDG DevFest Lighting Talks México
Juan José Rodriguez MsC.
 
Definición e implementación de soluciones basadas en APIs universales para la...
Pablo López Escobés
 
Html5 tips
Marco Villalta
 
SIBW - TAC - Trabajo - Daniel Díaz Salas
Daniel Díaz Salas
 
Geohabilitación de gestores contenidos: CMSMap
Pablo López Escobés
 
Google Earth Maps Api
BarCamp Quito
 
API REST de Geoservicios de Esri y los Servicios estándar OGC Clásicos - JIID...
Esri
 
Comparación e implementación de liberías webmapping como herramienta de visua...
Golgi Alvarez
 
Google Maps como modelo de negocio
GDG Lima
 
Publicidad

Último (20)

PDF
Conceptos básicos de programación trabajo grupal
darcyrobayo2007
 
PDF
Chile Claro Swap Project Guidebook Version 1.4.1b.pdf
DarkoAlmanzaTrujillo
 
DOCX
#USOLASTICPARA Proyecto integrador M1S4PI JuarezGonzalez _Maria_M1S4PI.doc...
MariaSusanaJuarezGon
 
PPTX
Telecomunicaciones proyeccion de ventas 2025.pptx
miguelolivarren2
 
PDF
actividad tecnologia (1).pdflksjksIUQWDIUWEGDHI
anavallejo2323
 
PDF
DIAGRAMA DE PARETO M Camila Duque Loaiza
MariacamilaDuqueloai
 
PDF
Excel Avanzado ..........................
Alejo857214
 
PDF
Diagrama de Pareto en PDF pareto el mejor
zaidmarinb11
 
PDF
Tecnología 2.0 (1).pdf, diagrama de pareto
paulavallejo21
 
PDF
2do grado medios de transportes.pdf para el primario
AndreaAlegre18
 
PDF
Trabajo Tecnología Diagrama De Pareto.pdf
srsantiagof09
 
PDF
Problema de pareto resuelto iandanielpdf
IanDanielGiraldoRami
 
PDF
Distribución de Frecuencias Excel Eleazar Muñoz
Eleazar88
 
DOCX
Informe de Tecnologia Diagrama de Pareto Juan Martinez, Alexandra Delgado, L...
edepisabellanaranjo
 
PDF
Solución actividad de Diagrama de Pareto
MaraJos722801
 
PDF
excel.pdf valentinamueses111 trabajo tecnologia
4zz5vkthyk
 
PDF
Conceptos básicos de programación - Paula Obando
edeppaulaobando
 
PDF
Excel avanzado trabajo grupal tecnologia
mapaulahiguita
 
PPTX
Actividad integradora 6 Crear un archivo multimedia
susana0271
 
PPTX
INTRODUCCION A BASE DE DATOS NIVELBASICO 6
Cangrilg
 
Conceptos básicos de programación trabajo grupal
darcyrobayo2007
 
Chile Claro Swap Project Guidebook Version 1.4.1b.pdf
DarkoAlmanzaTrujillo
 
#USOLASTICPARA Proyecto integrador M1S4PI JuarezGonzalez _Maria_M1S4PI.doc...
MariaSusanaJuarezGon
 
Telecomunicaciones proyeccion de ventas 2025.pptx
miguelolivarren2
 
actividad tecnologia (1).pdflksjksIUQWDIUWEGDHI
anavallejo2323
 
DIAGRAMA DE PARETO M Camila Duque Loaiza
MariacamilaDuqueloai
 
Excel Avanzado ..........................
Alejo857214
 
Diagrama de Pareto en PDF pareto el mejor
zaidmarinb11
 
Tecnología 2.0 (1).pdf, diagrama de pareto
paulavallejo21
 
2do grado medios de transportes.pdf para el primario
AndreaAlegre18
 
Trabajo Tecnología Diagrama De Pareto.pdf
srsantiagof09
 
Problema de pareto resuelto iandanielpdf
IanDanielGiraldoRami
 
Distribución de Frecuencias Excel Eleazar Muñoz
Eleazar88
 
Informe de Tecnologia Diagrama de Pareto Juan Martinez, Alexandra Delgado, L...
edepisabellanaranjo
 
Solución actividad de Diagrama de Pareto
MaraJos722801
 
excel.pdf valentinamueses111 trabajo tecnologia
4zz5vkthyk
 
Conceptos básicos de programación - Paula Obando
edeppaulaobando
 
Excel avanzado trabajo grupal tecnologia
mapaulahiguita
 
Actividad integradora 6 Crear un archivo multimedia
susana0271
 
INTRODUCCION A BASE DE DATOS NIVELBASICO 6
Cangrilg
 

Javascript - Módulo 9: Geolocalización en HTML5, Google maps, y SVG

  • 1. © Juan Quemada, DIT, UPM Geolocalización en HTML5 1 Juan Quemada, DIT, UPM
  • 2. © Juan Quemada, DIT, UPM HTML5 puede soportar geolocalización n En todo tipo de clientes w PCs, móviles tabletas, ..... El interfaz de geolocaclización n da acceso tambien a otros sensores w Brujula, acelerometro, ..... Geolocalización y Sensores 2 Juan Quemada, DIT, UPM
  • 3. © Juan Quemada, DIT, UPM La geolocalización se realiza siguiendo jerarquia de consultas n GPS -> antena WIFI -> antena GSM o 3G -> IP fija -> ..... w Se devuelve la respuesta más precisa La geolocalización está accesible en del objeto navigator.geolocation n con método getCurrentPosition(successFunction, errorFunction) w Permite conocer n Latitud y longitud en formato decimal n Altitud y precisión de la altitud n Dirección y velocidad Norma y tutoriales n http://dev.w3.org/geo/api/spec-source.html n http://dev.opera.com/articles/view/how-to-use-the-w3c-geolocation-api/ n http://code.google.com/apis/maps/index.html OJO! Geolocalización puede no funcionar por restricciones de seguridad n Usar el navegador Firefox para probar los ejemplos geolocalizados en local Geolocalización 3 Juan Quemada, DIT, UPM
  • 4. <!DOCTYPE html> <html> <head> <title>Example of W3C Geolocation API</title> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <script type="text/javascript"> if (navigator.geolocation) { //Check if browser supports W3C Geolocation API navigator.geolocation.getCurrentPosition (successFunction, errorFunction); } else { alert('Geolocation is not supported in this browser.'); } function successFunction(position) { var lat = position.coords.latitude; var long = position.coords.longitude; alert('Your latitude is :'+lat+' and longitude is '+long); } function errorFunction(position) { alert('Error!'); } </script> </head> <body> <p>If your browser supports Geolocation, you should get an alert with your coordinates.</p> <p>Read the <a href="http://dev.opera.com">Dev.Opera</a> article <a href="http://dev.opera.com/articles/view/how-to-use-the-w3c-geolocation-api/">"How to use the W3C Geolocation API"</a>. </body> </html> © Juan Quemada, DIT, UPM Ejemplo Geolocation 4 Juan Quemada, DIT, UPM
  • 5. © Juan Quemada, DIT, UPM Aplicación HTML5 geolocalizada en Google Maps 5 Juan Quemada, DIT, UPM
  • 6. © Juan Quemada, DIT, UPM Geolocalización con gmaps.js Aplicacion de geolocalización n Carga un mapa centrado en nuestra posición w que se indica con un marcador Usamos librería gmaps.js para acceso a Google Maps n librería muy potente y sencilla de utilizar w http://hpneo.github.io/gmaps/ n Se recomienda consultar documentación y ejemplos n La librería de Google es bastante mas compleja Se añade al mapa un manejador de eventos click/tap n que calcula la ruta hasta el punto indicado 6 Juan Quemada, DIT, UPM
  • 7. © Juan Quemada, DIT, UPM Geo-mapa 7 Juan Quemada, DIT, UPM
  • 8. © Juan Quemada, DIT, UPM Geo-mapa 8 Juan Quemada, DIT, UPM
  • 9. © Juan Quemada, DIT, UPM Geo-mapa 9 Juan Quemada, DIT, UPM
  • 10. © Juan Quemada, DIT, UPM 10 Juan Quemada, DIT, UPM Estilo CSS multi-terminal
  • 11. © Juan Quemada, DIT, UPM HTML5 SVG: Scalable Vector Graphics 11 Juan Quemada, DIT, UPM
  • 12. Formato de representación de gráficos vectoriales n Pueden cambiar de tamaño sin perdida de calidad Recursos n Galeria Wikimedia: http://commons.wikimedia.org/wiki/Category:SVGs_by_subject n Editor SVG: http://svg-edit.googlecode.com/svn/branches/2.5.1/editor/svg-editor.html n Tutorial: https://developer.mozilla.org/en-US/docs/Web/SVG n Tutorial: http://www.w3schools.com/svg/ SVG: Scalable Vector Graphics http://commons.wikimedia.org/wiki/File:Compass.svg http://commons.wikimedia.org/wiki/SVG_examples 12 © Juan Quemada, DIT, UPMJuan Quemada, DIT, UPM
  • 13. © Juan Quemada, DIT, UPM Ejemplo “Ajuste SVG” “Ajuste SVG” ilustra como reescalar una imagen SVG n Las imagenes en SVG reescalan sin perder calidad w porque son gráficos vectoriales w tutorial: http://www.w3schools.com/svg/ n Las imágenes GIT, JPEG o PNG no reescalan bien w porque tienen una resolución determinada Esta WebApp tiene 2 botones: “+” y “-” Cada vez que pulsamos uno de estos botones n el tamaño de la imagen debe aumentar o disminuir un 10% w según pulsemos “+” y “-” 13 Juan Quemada, DIT, UPM
  • 14. © Juan Quemada, DIT, UPM Ejemplo SVG 14 Juan Quemada, DIT, UPM
  • 15. © Juan Quemada, DIT, UPM Ejempo “Reloj SVG” “Reloj SVG” genera un reloj sencillo con SVG n El reloj se compone de w Un círculo negro w Tres lineas para las manecillas del reloj SVG puede animarse con javaScript n modificando la representación DOM del reloj w Versión 1: las manecillas se mueven con transform w https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/transform w Version 2: Calcula las coordenadas de las manecillas Se añade estilo CSS n Mejora el aspecto y adapta al tamaño de la pantalla 15 Juan Quemada, DIT, UPM
  • 16. © Juan Quemada, DIT, UPM Reloj SVG 16 Juan Quemada, DIT, UPM
  • 17. © Juan Quemada, DIT, UPM SVG: Reloj animado con “transform” Juan Quemada, DIT, UPM 17
  • 18. © Juan Quemada, DIT, UPM Animar manecillas con coordenadas Para animar las manecillas del reloj n se incluye un script que cada segundo w recalcula las coordenadas exteriores n de las manecillas del reloj n El secundero tiene una longitud de 50 pixels n El minutero tiene una longitud de 40 pixels n La manecilla horaria de 30 pixels Las coordenadas x2, y2 de las manecillas de horas, minutos y segundos se calculan con las funciones n x2(tiempo, unidades_por_vuelta, x1, radio) n y2(tiempo, unidades_por_vuelta, y1, radio) 18 Juan Quemada, DIT, UPM
  • 19. © Juan Quemada, DIT, UPM SVG: Reloj animado con coordenadas 19 Juan Quemada, DIT, UPM
  • 20. © Juan Quemada, DIT, UPM Relojes con “estilo” Usando CSS e imágenes se pueden diseñar n Las capturas muestran pequeños cambios de diseño w que cambian muy significativamente la apariencia del reloj n Hacer clic en estos URLs para verlos w https://googledrive.com/host/0B48KCWfVwCIEMjFhUHM4d3FnSTg/09-clock_CSS.htm w https://googledrive.com/host/0B48KCWfVwCIEMjFhUHM4d3FnSTg/10_clock_CSS_a.html w https://googledrive.com/host/0B48KCWfVwCIEMjFhUHM4d3FnSTg/10_clock_CSS_b.htm w https://googledrive.com/host/0B48KCWfVwCIEMjFhUHM4d3FnSTg/10_clock_CSS_c.htm w https://googledrive.com/host/0B48KCWfVwCIEMjFhUHM4d3FnSTg/10_clock_CSS_d.htm 20 Juan Quemada, DIT, UPM
  • 21. © Juan Quemada, DIT, UPM SVG: Reloj con estilo CSS 21 Juan Quemada, DIT, UPM
  • 22. Los objetos SVG se pueden definir también como objetos externos en XML n Para importarlos con: w <img>, <object>, <embed>, <iframe> n Tutorial: http://tavmjong.free.fr/INKSCAPE/MANUAL/html/Web-Use.html Objetos SVG 22 © Juan Quemada, DIT, UPMJuan Quemada, DIT, UPM
  • 23. © Juan Quemada, DIT, UPM Final del tema Muchas gracias! 23 Juan Quemada, DIT, UPM