Expresar Valores En Forma De Hora Y Despues, Grados, Minutos, Segundos


Objetivo: Expresar Valores En Forma De Hora Y Despues, Grados, Minutos, Segundos
Sigo liado con el tema del seguidor solar, la pregunta es si se pueden expresar los valores en forma de horas, (4:56:34) y cómo. Seguramente también tendré que seguir esta expresión, pero sobre el calendario juliano, que creo que no esta en un sistema de 24 horas. He visto un ejemplo en gambas que simplemente le dice que cuando llegue a 60, apunte 0 otra vez y ponga +1 en la casilla de la izquierda, pero yo quería saber si se puede expresarlas internamente de alguna forma concreta, para que el programa siga haciendo los cálculos como si fueran horas. (no sé si me explico)

Otro tema importante es expresar los valores en forma de grados, minutos y segundos, que serán los grados de orientación del panel: hay alguna forma de decirle al programa que trate y exprese a estos valores como grados?

Gracias de antemano y perdonen mi ignorancia.

Perfil MP  
Objetivo: Re: Expresar Valores En Forma De Hora Y Despues, Grados, Minutos, Segundos
Oleguer:

Revisa esto para el formato de horas:

http://gambasdoc.org/help/cat/userformat?es

Para lo otro tendrás que construirte una función propia.

¿ Quieres convertir de grados centesimales a sexagesimales ?.
No es que pueda expresarlo directamente.

Tendrás que hacer la conversión con una función y añadir los caracteres correspondientes en una caja de texto.

cajadetexto.text = grados & "º " & minutos & "' " & segundos & Chr$(34)

La conversión:
Recordamos que 1º = 60'
Así que : 1º = 3600"

Ejemplo:
60,34º

Convertimos 0,34º a minutos
0.34 * 60 = 20,4'

Separamos la parte entera de la decimal
0,4' * 60 = 24 "

Así obtenemos:
60º 20' 24"

Un código posible
PUBLIC SUB Form_Open()
DIM gradoscent AS Float

gradoscent = 80.23
PRINT convsegeximal(gradoscent)

END


PUBLIC FUNCTION convsegeximal(gradosc AS Float) AS String
DIM grados AS Float
DIM minutos AS Float
DIM segundos AS Float
DIM conversion AS String

grados = Int(gradosc)
minutos = Frac(gradosc) * 60
segundos = Frac(minutos) * 60

minutos = Int(minutos)
segundos = Int(segundos)

conversion = grados & "º " & minutos & "' " & segundos & Chr$(34)

RETURN conversion

END


Saludos.

última edición por Shell el Sabado, 26 May 2012, 10:34; editado 1 vez
Objetivo: Re: Expresar Valores En Forma De Hora Y Despues, Grados, Minutos, Segundos
Muchas gracias

Perfil MP  

Página 1 de 1


  
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario

   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 0.3611s (PHP: -82% SQL: 182%)
Consultas SQL: 46 - Debug off - GZIP Activado