Este reloj se ha diseñado usando la función GetTime[] (TomaTiempo[] en la versión castellana)[br][br]Comando TomaTiempo[]: http://wiki.geogebra.org/es/Comando_TomaTiempo[br]Comando GetTime[] (versión inglesa): http://wiki.geogebra.org/en/GetTime_Command[br][br][list][br][*] La estructura global del reloj se ha diseñado usando una circunferencia centrada en el origen y para los segmentos que indican las posiciones de las horas se han usado puntos expresados en coordenadas polares (marcas = Sequence[(3; 2π / 12 k), k, 0, 11] ; marcasAmpliadas = Sequence[(3.5; 2π / 12 k), k, 0, 11] ; segmentos = Zip[Segment[A, B], A, marcas, B, marcasAmpliadas]) [br][*] Se define una lista sin elementos: horaReal={}[br][*] Se define un deslizador a cuya animación se regula con una casilla de control, pero este detalle se puede omitir y se puede diseñar todo simplemente activando la animación del deslizador a[br][*] Al deslizador se le asigna el siguiente script (Al Actualizar): Valor[horaReal, TomaTiempo[]] ; Ese script lo que hace es asignar a la lista horaReal los valores que devuelve la función TomaTiempo[] que no es más que una lista larga cuyos elementos recogen diversos datos del tiempo actual (p.ej. en un instante concreto: {591, 19, 6, 17, 18, 3, 2014, "Marzo", "Martes", 3} ). Esos valores se actualizan cuando se mueve el deslizador (manualmente o por animación).[br][*] El tercer elemento de la lista indica los minutos. Recogemos ese valor en la variable minutos : minutos = Elemento[horaReal, 3].[br][*] El cuarto elemento de la lista indica la hora en formato 0-23. Recogemos el valor de la hora en la variable horas en valores de 0-12. Para ello hacemos: horas = Resto[Elemento[horaReal, 4], 12] (lo que hacemos es dividir la hora expresada en formato 0-23 entre 12 y nos quedamos con el resto de la división usando la función Resto[]; lo que hacemos realmente es expresar el valor horario que devuelve la función TomaTiempo[] módulo 12).[br][*]Para dibujar el minutero definimos un vector expresando el afijo en coordenadas polares: min = (3; 90° - (6 minutos)°)[br][*]Para dibujar la manecilla horaria definimos otro vector: hor = (2.2; 90° - (horas 30)° - (30minutos / 60)°)[br][/list][br][br][br][br][b]PROPUESTA DE EJERCICIO:[/b][br][list][br][*]Realiza una construcción similar.[br][*]Añade un segundero.[br][/list]
Carlos Fleitas, febrero de 2014