Van graden naar h-m-s
we hebben een hoek in graden, bvb 180,45932°
nu wil ik dit omzetten naar uren minuten seconden
het aantal uur wordt bekomen door de hoek te delen door 15. Maar nu wil ik nog het aantal minuten en seconden...
wie weet raad...
Ik had wel iets andersom gemaakt maar niet voor secondes, maar ben niet thuis dus heb het niet..
voor minuten en seconden met je de hoek door 360/60 = 6 delen.
180 graden komt dus overeen met 30 minuten.
ik zal de rest eens toepassen op de code ;)
alvast dank ;)
-7h -10m -29.97s
In principe bestaat in dit stelsel een complete cirkel uit 360 graden, elke graad weer uit 60 minuten en elke minuut uit 60 seconden.
Achter de comma heb je 0,45932 graden staan.
0,45932 graden dit moet je vermenigvuldigen met 60 om het te converteren naar minuten (om met tijd te vergelijken, er staat: 0,45932 uur) dus daar wil je van maken:
0,45932 * 60 = 27,5592
dat is 180° 27'
In programmeertaal doe je dus:
$tijdmnuten -= int($tijdminuten);
Achter de comma staat dan 0,5592
Dat vermenigvuldig je weer met 60 om aan seconden te komen:
0,5592*60 = 33,552
Wat je zoekt is dus een hoek van 180°27'33"
Om dit in php te doen:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<?
// Uitkomst: $hoek° $minuten' $seconden"
$hoek = 180.45932;
// invoer;
$graden = int($hoek);
// 180,5793758943 levert 180 graden op.
$minuten = $hoek - int($hoek);
// Alles achter de comma gaan we verder mee rekenen
$minuten *= 60;
// en dat vermenigvuldigen we met 60;
$seconden = $minuten - $int(minuten);
// wat er vervolgens weer achter de komma staat worden seconden
$minuten = int($minuten);
// en we gooien wat er in $minuten achter de komma staat weg.
$seconden *= 60;
// seconden vermenigvuldigen we met 60
$seconden = int($seconden);
// en achter de komma is niet relevant.
?>
// Uitkomst: $hoek° $minuten' $seconden"
$hoek = 180.45932;
// invoer;
$graden = int($hoek);
// 180,5793758943 levert 180 graden op.
$minuten = $hoek - int($hoek);
// Alles achter de comma gaan we verder mee rekenen
$minuten *= 60;
// en dat vermenigvuldigen we met 60;
$seconden = $minuten - $int(minuten);
// wat er vervolgens weer achter de komma staat worden seconden
$minuten = int($minuten);
// en we gooien wat er in $minuten achter de komma staat weg.
$seconden *= 60;
// seconden vermenigvuldigen we met 60
$seconden = int($seconden);
// en achter de komma is niet relevant.
?>
RA = 26.6580_deg = 26.6580/15 h = 1.77720 h = 1h 46m 37.9s
de graden is in rechthoekige equatoriale coordinaten dus niet het normale gradenstelsel ;)
inmiddels is het me gelukt, bedankt allen voor de hulp!
Kan je de oplossing nog even posten? Is handig voor iemand die dit in de toekomst zoekt.
$RA_uur = $RA/15; // omzetten naar uren
$RA_min = abs(($RA_uur - ceil($RA_uur)) * 60);
$RA_sec = abs(($RA_min - ceil($RA_min)) * 60);
$RAhms = "".ceil($RA_uur)."h ".ceil($RA_min)."m ".round($RA_sec,2)."s";
ceil als het getal lager is dan nul, floor voor als het hoger is dan nul, de abs is er om de - weg te krijgen
niet als de zoekmachine niet werkt :)