3 Die Funktionen
3.1 Einschränkungen
Nicht alle Häuser- und Direktionssysteme eignen sich auch für alle astrologischen Techniken. Es bestehen folgende Einschränkungen:
Häuserspitzen
Für die Systeme PLACIDUS und KOCH können keine Häuserspitzen innerhalb der
Polargebiete berechnet werden. Das gleiche gilt für deren azimutale Varianten
in den tropischen Zonen. An Stelle der Längen der Häuserspitzen wird dann mpERROR
zurückgegeben. Für das topozentrische System lassen sich die
Häuserspitzen zwar auch für diese Gebiete berechnen, die Ergebniss sind allerdings
fragwürdig, da sich die Positionslinien der Häuser überschneiden und deren
Reihenfolge durcheinander geraten kann. Eine eventuelle Fehlerbehandlung ist
hierfür nicht vorgesehen
Mundane Position
Bei Halbbogensystemen kann die mundane Position eines Gestirns verständlicherweise
nur berechnet werden, wenn es auch Halbbögen gibt. Sollte dies nicht der Fall sein.
geben die entsprechenden Funktionen mpERROR zurück.
Das KOCH-System ist nur für Punkte auf der Ekliptik definiert. Üblicherweise setzt man daher zur Berechnung der mundanen Position die ekliptikale Breite auf 0.
Direktionsbögen
Mit den Systemen KÜHR und POLICH & PAGE sind keine Direktionen zu Mundanaspekten
möglich. Die entsprechenden Funktionen geben in solchen Fällen mpERROR zurück.
Da das KOCH-System nur für die Ekliptik definiert ist, die Promissoren aber nicht entlang der Ekliptik, sondern auf ihrem Deklinationskreis parallel zum Äquator dirigiert werden, eignet es sich nicht für Primärdirektionen.
3.2 Funktionen - Uebersicht
Konstruktor
Funktion | Berschreibung |
---|---|
mpInit | Parameterloser Konstruktor |
Setter Funktionen
Funktion | Berschreibung |
---|---|
mpSetHsys | Setzt das Haeusersystem |
mpSetHsysShift | Setzt das Haeusersystem und den mundanen Offset shift |
mpSetShift | Setzt den mundanen Offset shift |
mpSetDecl | Setzt die Deklination fuer Parallelkreissysteme |
mpSetEvent | Setzt Zeitpunkt und Ort des Ereignisses |
mpSetLocation | Setzt die geographische Laenge und Breite des Ereignisortes |
mpSetTime | Setzt den Zeitpunkt des Ereignises |
mpSetEPS | Setzt die Schiefe der Ekliptik. |
mpSetST | Setzt die Sternzeit |
mpSetLon | Setzt die geographische Laenge |
mpSetLat | Setzt die geographische Breite |
Getter Funktionen
Funktion | Berschreibung |
---|---|
mpGetHsys | Gibt das Haeusersystem zurueck |
mpGetFlags | Gibt die Flags zurueck |
mpGetShift | Gibt der mundanen Offset zurueck |
mpGetEPS | Gibt die Schiefe der Ekliptik zurueck |
mpGetST | Gibt die Sternzeit zurueck |
mpGetLon | Gibt die geographische Laenge des Ereignisortes zurueck |
mpGetLat | Gibt die geographische Breite des Ereignisortes zurueck |
mpGetRAMC | Gibt die lokale Sternzeit im Gradmass (RAMC) zurueck |
mpGetMC | Gibt die Laenge des MC zurueck |
mpGetAC | Gibt die Laenge des Aszendenten zurueck |
mpGetAV | Berechnet die Laenge des Antivertex |
mpGetEA | Berechnet die Laenge des aequatorial-Aszendenten / Polar-Antivertex |
Berechnungen
Funktion | Berschreibung |
---|---|
mpCalcCusps | Berechnet n Haeuserspitzen |
mpCalcLong | Laenge aus mundaner Position |
mpCalcLong2 | Laenge aus OA und Polhoehe |
mpCalcLongDir | Dirigierte Position in schiefer Laenge |
mpCalcPosition | Berechnet die mundane Position aus Laenge und Breite. |
mpCalcPos2 | Mundane Position |
mpCalcPosIP | Interpolierte mundane Position |
mpCalcArc | Direktion zu mundaner Position |
mpCalcArc2 | Interplanetare Direktion |
mpCalcArcRapt | Direktion mundaner aequidistanzen |
mpCalcRA | Rektaszension aus Laenge und Breite |
mpCalcDE | Deklination aus Laenge und Breite |
mpCalcAZ | Azimut aus Laenge und Breite |
mpCalcALT | Hoehe aus Laenge und Breite |
mpCalcGC | OA/OD und Polhoehe aus mundaner Position |
mpCalcSpeculum | Berechnet verschiedene Werte fuer das Spekulum |
Umrechnungen
Funktion | Berschreibung |
---|---|
mpCoTrans | Ekliptik <-> aequator |
mpEqu2Hor | aequator -> Horizont |
mpHor2Equ | Horizont -> aequator |
mpNorm360 | In den Bereich 0..360 Grad verschieben |
mpNorm180 | In den Bereich -180..+180 Grad verschieben |
mpCal2JD | Julianischer Tag JD aus Kalenderdatum |
mpJD2Cal | Kalenderdatum aus julianischem Tag JD |
Verschiedenes
Funktion | Berschreibung |
---|---|
mpAspect | Geometrischer Aspektwinkel (Orthodrome) und Halbdistanz |
mpGeoZ | Geozentrische Breite aus geographischer Breite |
3.2 Die Funktionen
mpInit
void mpInit( | MUNPOS *m); |
Parameterloser Konstruktor
Initialisiert die MUNPOS Instanz
Parameter:
*m Pointer auf MUNPOS Instanz
mpSetHsys
int mpSetHsys( | MUNPOS *m, |
unsigned hsys); |
Setzt das Haeusersystem
Die Strukturvariable shift wird dabei auf 0 gesetzt.
Parameter:
*m Pointer auf MUNPOS Instanz hsys Haeusersystem
Flags:
mpPOLAR Azimutale Version berechnen mpREVERSE Haeuser im Uhrzeigersinn
Rueckgabewert:
0 oder im Fehlerfall 1
mpSetHsysShift
int mpSetHsysShift( | MUNPOS *m, |
unsigned hsys, | |
double shift); |
Setzt das Haeusersystem und den mundanen Offset shift
Parameter:
*m Pointer auf MUNPOS Instanz hsys Haeusersystem shift Offset der mundanen Position (ueblicherweise 0.0)
Flags:
mpPOLAR Azimutale Version berechnen mpREVERSE Haeuser im Uhrzeigersinn
Rueckgabewert:
0 oder im Fehlerfall 1
mpSetShift
void mpSetShift( | MUNPOS *m, |
double shift); |
Setzt den mundanen Offset shift
Parameter:
*m Pointer auf MUNPOS Instanz shift Offset der mundanen Position
mpSetDecl
int mpSetDecl( | MUNPOS *m, |
double de); |
Setzt die Deklination fuer Parallelkreissysteme
Setzt die Deklination fuer Deklinationssysteme (z.B. Solar House System). Zuvor muss das Haeusersysten mpHALY gesetzt werden.
Parameter:
*m Pointer auf MUNPOS Instanz de Deklination des Parallelkreises
Rueckgabewert:
0 oder im Fehlerfall 1
mpSetEvent
void mpSetEvent( | MUNPOS *m, |
double eps, | |
double st, | |
double lon, | |
double lat); |
Setzt Zeitpunkt und Ort des Ereignisses
Setzt die Schiefe der Ekliptik, die Ereigniszeit und den Ereignisort.
Parameter:
*m Pointer auf MUNPOS Instanz eps Wahre Schiefe der Ekliptik st Sternzeit (Greenwich apparent sidereal time) lon Geographische Laenge (positiv nach Osten gezaehlt) lat Geographische Breite (auf der Nordhalbkugel positiv, auf der Suedhalbkugel negativ)
mpSetLocation
void mpSetLocation( | MUNPOS *m, |
double lon, | |
double lat); |
Setzt die geographische Laenge und Breite des Ereignisortes
Parameter:
*m Pointer auf MUNPOS Instanz lon Geographische Laenge (positiv nach Osten gezaehlt) lat Geographische Breite (auf der Nordhalbkugel positiv, auf der Suedhalbkugel negativ)
mpSetTime
void mpSetTime( | MUNPOS *m, |
double lon, | |
double lat); |
Setzt den Zeitpunkt des Ereignises
Parameter:
*m Pointer auf MUNPOS Instanz eps Wahre Schiefe der Ekliptik st Sternzeit (Greenwich apparent sidereal time)
mpSetEPS
void mpSetEPS( | MUNPOS *m, |
double eps); |
Setzt die Schiefe der Ekliptik.
Parameter:
*m Pointer auf MUNPOS Instanz eps Wahre Schiefe der Ekliptik
mpSetST
void mpSetST( | MUNPOS *m, |
double st); |
Setzt die Sternzeit
Parameter:
*m Pointer auf MUNPOS Instanz st Sternzeit (Greenwich apparent sidereal time)
mpSetLon
void mpSetLon( | MUNPOS *m, |
double lon); |
Setzt die geographische Laenge
Parameter:
*m Pointer auf MUNPOS Instanz lon Geographische Laenge (positiv nach Osten gezaehlt)
mpSetLat
void mpSetLat( | MUNPOS *m, |
double ast); |
Setzt die geographische Breite
Parameter:
*m Pointer auf MUNPOS Instanz lat Geographische Breite (auf der Nordhalbkugel positiv, auf der Suedhalbkugel negativ)
mpGetHsys
unsigned mpGetHsys( | MUNPOS *m); |
Gibt das Haeusersystem zurueck
Parameter:
*m Pointer auf MUNPOS Instanz
Rueckgabewert:
Haeusersystem
mpGetFlags
unsigned mpGetFlags( | MUNPOS *m); |
Gibt die Flags zurueck
Parameter:
*m Pointer auf MUNPOS Instanz
Flags:
mpPOLAR Azimutale Version berechnen mpREVERSE Haeuser im Uhrzeigersinn. mpSTA_DIR Aszendent oder Antivertex auf der 'falschen' Seite des Meridians.
Rueckgabewert:
flags als unsigned int
mpGetShift
double mpGetShift( | MUNPOS *m); |
Gibt der mundanen Offset zurueck
Parameter:
*m Pointer auf MUNPOS Instanz
Rueckgabewert:
Wert der Variablen shift.
mpGetEPS
double mpGetEPS( | MUNPOS *m); |
Gibt die Schiefe der Ekliptik zurueck
Parameter:
*m Pointer auf MUNPOS Instanz
Rueckgabewert:
Wahre Schiefe der Ekliptik
mpGetST
double mpGetST( | MUNPOS *m); |
Gibt die Sternzeit zurueck
Parameter:
*m Pointer auf MUNPOS Instanz
Rueckgabewert:
Sternzeit (Greenwich apparent sideral time)
mpGetLon
double mpGetLon( | MUNPOS *m); |
Gibt die geographische Laenge des Ereignisortes zurueck
Parameter:
*m Pointer auf MUNPOS Instanz
Rueckgabewert:
Geographische Laenge (positiv nach Osten gezaehlt)
mpGetLat
double mpGetLat( | MUNPOS *m); |
Gibt die geographische Breite des Ereignisortes zurueck
Parameter:
*m Pointer auf MUNPOS Instanz
Rueckgabewert:
Geographische Breite (auf der Nordhalbkugel positiv, auf der Suedhalbkugel negativ)
mpGetRAMC
double mpGetRAMC( | MUNPOS *m); |
Gibt die lokale Sternzeit im Gradmass (RAMC) zurueck
Parameter:
*m Pointer auf MUNPOS Instanz
Rueckgabewert:
Wahre lokale Sternzeit im Gradmass (RAMC)
mpGetMC
double mpGetMC( | MUNPOS *m); |
Gibt die Laenge des MC zurueck
Parameter:
*m Pointer auf MUNPOS Instanz
Rueckgabewert:
Laenge des MC
mpGetAC
double mpGetAC( | MUNPOS *m); |
Gibt die Laenge des Aszendenten zurueck
Parameter:
*m Pointer auf MUNPOS Instanz
Rueckgabewert:
Laenge des Aszendenten
mpGetAV
double mpGetAV( | MUNPOS *m); |
Berechnet die Laenge des Antivertex
Dieser Punkt wird auch als 'Ostpunkt der Ekliptik' bezeichnet.
Parameter:
*m Pointer auf MUNPOS Instanz
Rueckgabewert:
Laenge des Antivertex
mpGetEA
double mpGetEA( | MUNPOS *m); |
Berechnet die Laenge des aequatorial-Aszendenten / Polar-Antivertex
Dieser Punkt wird meistens faelschlicherweise als 'Ostpunkt' bezeichnet.
Parameter:
*m Pointer auf MUNPOS Instanz
Rueckgabewert:
Laenge des Aequatorial-Aszendenten / Polar-Antivertex
mpCalcCusps
int mpCalcCusps( | MUNPOS *m, |
int n, | |
double *cusps); |
Berechnet n Haeuserspitzen
Schreibt die Laengen von n Haeusersptzen in das Array cusps[n].
Parameter:
*m Pointer auf MUNPOS Instanz n Anzahl der Haeuser cusps Pointer aud double[n]
Rueckgabewert:
0 oder im Fehlerfall 1
mpCalcLong
double mpCalcLong( | MUNPOS *m, |
double mp); |
Laenge aus mundaner Position
Berechnet die Laenge aus der mundanen Position. Hat mundane Position die Werte 0, 30, 60.., so entspricht diese Laenge einer Haeuserspitze eines 12-teiligen Haeusersystems.
Parameter:
*m Pointer auf MUNPOS Instanz mp mundane Position
Rueckgabewert:
Laenge
mpCalcLong2
double mpCalcLong2( | MUNPOS *m, |
double oa, | |
double psi); |
Laenge aus OA und Polhoehe
Parameter:
*m Pointer auf MUNPOS Instanz oa Schiefe Aufsteigung psi Polhoehe
Rueckgabewert:
Laenge oder im Fehlerfall mpERROR
mpCalcLongDir
double mpCalcLongDir( | MUNPOS *m, |
double lon, | |
double lat, | |
double arc); |
Dirigierte Position in schiefer Laenge
Verschiebt die Positionslinie des durch Laenge und Breite gegebenen Signifikators unter Beibehaltung der Polhoehe um den Direktionsbogen entlang des aequators und gibt die Laenge des Schnittpunkts der verschobenen Positionslinie mit der Ekliptik zurueck.
Parameter:
*m Pointer auf MUNPOS Instanz lon Laenge lat Breite arc Direktionsbogen
Rueckgabewert:
Schiefe Laenge
mpCalcPosition
double mpCalcPosition( | MUNPOS *m, |
double lon, | |
double lat); |
Berechnet die mundane Position aus Laenge und Breite.
Parameter:
*m Pointer auf MUNPOS Instanz lon Laenge lat Breite
Rueckgabewert:
Mundane Position
mpCalcPos2
double mpCalcPos2( | MUNPOS *m, |
double x, | |
double y, | |
int flag); |
Mundane Position
Berechnet die mundane Position aus Rektaszension und Deklination wenn flag == 0 oder aus Laenge und Breite, wenn flag == 1.
Parameter:
*m Pointer auf MUNPOS Instanz x Rektaszension oder Laenge y Deklination oder Breite flag
Rueckgabewert:
Mundane Position
mpCalcPosIP
double mpCalcPosIP( | MUNPOS *m, |
int n, | |
double lon); |
Interpolierte mundane Position
Interpoliert die mundane Position linear auf den Ekliptikboegen zwischen den Haeuserspitzen, wie es in computerlosen Zeiten ueblich war. Diese Funktion dient in erster Linie fuer Vergleichszwecke, und sollte aufgrund der Ungenauigkeit fuer uebliche Berechnungen nicht verwendet werden.
Parameter:
*m Pointer auf MUNPOS Instanz n Anzahl der Haeuserspitzen (mindestens 4) lon Laenge
Rueckgabewert:
Interpolierte mundane Position
mpCalcArc
double mpCalcArc( | MUNPOS *m, |
double pro_lon, | |
double pro_lat, | |
double mp, | |
unsigned flags, | |
double asp); |
Direktion zu mundaner Position
Berechnet den Direktionsbogen aus Laenge und Breite des Promissors, mundaner Position des Signifikators, sowie Aspektwinkel/Spiegelpunkt. Diese Funktion eignet sich nicht fuer die Systeme mpKUEH und mpPOPA, da hier die Deklination des Signifikators nicht bekannt ist.
Parameter:
*m Pointer auf MUNPOS Instanz pro_lon Laenge des Promissors pro_lat Breite des Promissors mp Mundane Position des Signifikators flags flags asp Aspektwinkel oder Spiegelpunkt (wenn Flag mpMIRROR gesetzt)
Flags:
mpMUNDO Direktion zu Mundanaspekt mpMIRROR Mundanen Spiegelpunkt berechnen mpLAT_P Promissor mit Breite berechnen mpLAT_S Signifikator mit Breite berechnen mpBIANC Promissorbreite nach Bianchini, wenn mpLAT_P gesetzt
Rueckgabewert:
Direktionsbogen oder im Fehlerfall mpERROR
mpCalcArc2
double mpCalcArc2( | MUNPOS *m, |
double pro_lon, | |
double pro_lat, | |
double sig_lon, | |
double sig_lat, | |
unsigned flags, | |
double asp); |
Interplanetare Direktion
Berechnet den Direktionsbogen aus Laenge und Breite des Promissors, Laenge und Breite des Signifikators, sowie Aspektwinkel/Spiegelpunkt. Mit den Systemen mpKUEH und mpPOPA sind Direktionen zu Mundanaspekten nicht moeglich.
Parameter:
*m Pointer auf MUNPOS Instanz pro_lon Laenge des Promissors pro_lat Breite des Promissors sig_lon Laenge des Signifikators sig_lat Breite des Signifikators flags flags asp Aspektwinkel oder Spiegelpunkt (wenn Flag mpMIRROR gesetzt)
Flags:
mpMUNDO Direktion zu Mundanaspekt mpMIRROR Mundanen Spiegelpunkt berechnen mpLAT_P Promissor mit Breite berechnen mpLAT_S Signifikator mit Breite berechnen mpBIANC Promissorbreite nach Bianchini, wenn mpLAT_P gesetzt
Rueckgabewert:
Direktionsbogen oder im Fehlerfall mpERROR
mpCalcArcRapt
int mpCalcArcRapt( | MUNPOS *m, |
double lon1, | |
double lat1, | |
double lon2, | |
double lat2, | |
double mpos, | |
double *vect); |
Direktion mundaner aequidistanzen
Berechnet iterativ den Direktionsbogen aus dem aequidistanzpunkt zweier durch Laengen und Breiten gegebenener Promissoren und der mundanen Position des Signifikators.
Parameter:
*m Pointer auf MUNPOS Instanz p1_lon Laenge Promissor 1 p1_lat Breite Promissor 1 p2_lon Laenge Promissor 2 p2_lat Breite Promissor 2 mp Mundane Position des Signifikators vect Pointer auf double[6]
Berechnete Werte:
vect[0] Direktionsbogen vect[1] aequidistanz vect[2] Direktionsbogen zum Oppositionspunkt vect[3] aequidistanz vect[4] Direktionsbogen zur kleineren aequidistanz vect[5] aequidistanz
Rueckgabewert:
Anzahl der gesamten Iterationsschritte oder im Fehlerfall -1
mpCalcRA
double mpCalcRA( | MUNPOS *m, |
double lon, | |
double lat); |
Rektaszension aus Laenge und Breite
Parameter:
*m Pointer auf MUNPOS Instanz lon Laenge lat Breite
Rueckgabewert:
Rektaszension
mpCalcDE
double mpCalcDE( | MUNPOS *m, |
double lon, | |
double lat); |
Deklination aus Laenge und Breite
Parameter:
*m Pointer auf MUNPOS Instanz lon Laenge lat Breite
Rueckgabewert:
Deklination
mpCalcAZ
double mpCalcAZ( | MUNPOS *m, |
double lon, | |
double lat); |
Azimut aus Laenge und Breite
Parameter:
*m Pointer auf MUNPOS Instanz lon Laenge lat Breite
Rueckgabewert:
Azimut
mpCalcALT
double mpCalcALT( | MUNPOS *m, |
double lon, | |
double lat); |
Hoehe aus Laenge und Breite
Parameter:
*m Pointer auf MUNPOS Instanz lon Laenge lat Breite
Rueckgabewert:
Hoehe
mpCalcGC
int mpCalcGC( | MUNPOS *m, |
double mp, | |
double *gc); |
OA/OD und Polhoehe aus mundaner Position
Schreibt OA/OD und Polhoehe des der mundanen Position entsprechenden
Grosskreises in ein Array vom Typ double[2].
Die Polhoehe kann auch negative Werte annehmen.
Parameter:
*m Pointer auf MUNPOS Instanz mp mundane Position *gc Pointer auf double[2]
Berechnete Werte:
gc[0] OA gc[1] Polhoehe
Rueckgabewert:
0 wenn ok oder im Fehlerfall 1.
mpCalcSpeculum
void mpCalcSpeculum( | MUNPOS *m, |
double lon, | |
double lat, | |
SPECULUM *spec); |
Berechnet verschiedene Werte fuer das Spekulum
Berechnet verschiedene Werte fuer das Spekulum und schreibt sie in eine Instanz der Struktur SPECULUM.
Ist mpPLAC gesetzt, wird die Polhoehe nach Kuehr berechnet. Die Spekulum Daten unterscheiden sich bei diesen Systemen also nicht. Fuer die Direktionssysteme mpKUEH und mpPOPA wird die mundane Position nach Placidus berechnet.
Parameter:
*m Pointer auf MUNPOS Instanz lon ekl. Laenge lat ekl. Breite *spec Pointer auf SPECULUM Instanz
Berechnete Werte:
SPECULUM::lon Kopie der Laenge SPECULUM::lat Kopie der Breite SPECULUM::ra Rektaszension SPECULUM::de Deklination SPECULUM::az Azimut (Nullpunkt: Norden) SPECULUM::alt Hoehe SPECULUM::umd Obere Meridiandistanz im Bereich +/- 180 Grad, im Westen negativ SPECULUM::ad Aszensional- / Azimutaldifferenz SPECULUM::sa Halbbogen, Nachthalbbogen negativ SPECULUM::oa OA oder OD SPECULUM::pd Proportionaldistanz mit Vorzeichen (Meridiandistanz / Halbbogen) SPECULUM::mp Mundane Position SPECULUM::q Aszensionaldifferenz unter eigenem Pol SPECULUM::w OA/OD unter eigenem Pol SPECULUM::psi Polhoehe (kann auch negativ sein) SPECULUM::md Meridiandistanz, am IC negativ SPECULUM::hd Horizontdistanz, im Westen negativ SPECULUM::zd Zenit-/Nadirdistanz, am Nadir negativ SPECULUM::ed Ostpunk-/Westpunktdistanz, am Westpunkt negativ SPECULUM::rl Rechte Laenge
mpCoTrans
void mpCoTrans( | double eps, |
double x, | |
double y, | |
double *coord); |
Ekliptik <-> aequator
Rechnet ekliptikale Koordinaten in aequatoriale Koordinaten um (und vice versa, wenn eps negativ).
Parameter:
eps Schiefe der Ekliptik lon Laenge (Rektaszension) lat Breite (Deklination) *coord Pointer auf double[2]
Berechnete Werte:
coord[0] Rektaszension (Laenge) coord[1] Deklination (Breite)
mpEqu2Hor
void mpEqu2Hor( | double lst, |
double phi, | |
double ra, | |
double de, | |
double *coord); |
aequator -> Horizont
Rechnet aequatoriale Koordinaten in horizontale Koordinaten um.
Parameter:
lst Lokale Sternzeit (RAMC) phi Geographische Breite ra Rektaszension de Deklination *coord Pointer auf double[2]
Berechnete Werte:
coord[0] Azimut coord[1] Hoehe
mpHor2Equ
void mpHor2Equ( | double lst, |
double phi, | |
double az, | |
double alt, | |
double *equ); |
Horizont -> aequator
Rechnet horizontale Koordinaten in aequatoriale Koordinaten um.
Parameter:
lst Lokale Sternzeit (RAMC) phi Geographische Breite az Azimut alt Hoehe *coord Pointer auf double[2]
Berechnete Werte:
coord[0] Rektaszension coord[1] Deklination
mpNorm360
double mpNorm360( | double alpha); |
In den Bereich 0..360 Grad verschieben
Parameter:
alpha Winkel alpha
Rueckgabewert:
0° ≤ alpha < 360°
mpNorm180
double mpNorm180( | double alpha); |
In den Bereich -180..+180 Grad verschieben
Parameter:
alpha Winkel alpha
Rueckgabewert:
-180° ≤ alpha <+180°
mpCal2JD
double mpCal2JD( | int year, |
int month, | |
int day, | |
double hours, | |
int jul, | |
DATTIM *dt); |
Julianischer Tag JD aus Kalenderdatum
Schreibt die uebergebenen Werte und den daraus errechneten Julianischen Tag in eine Instanz der Struktur DATTIM wenn *dt != NULL.
Parameter:
*dt NULL oder Pointer auf DATTIM Instanz year Jahr month Monat day Tag hours Tagesbruchteil in Stunden jul 0 == gregorianischer, 1 == julianischer Kalender
Rueckgabewert:
Julianischer Tag
mpJD2Cal
void mpJD2Cal( | double jd, |
DATTIM *dt); |
Kalenderdatum aus julianischem Tag JD
Schreibt den uebergebenen Wert sowie das daraus errechnete Kalenderdatum in eine Instanz der Struktur DATTIM.
Parameter:
*dt Pointer auf DATTIM Instanz jd Julianischer Tag
Berechnete Werte:
year Jahr month Monat day Tag hours Tagesbruchteil in Stunden
mpAspect
double mpAspect( | double L1, |
double B1, | |
double L2, | |
double B2, | |
double *vect); |
Geometrischer Aspektwinkel (Orthodrome) und Halbdistanz
Berechnet den Bogen der Orthodrome.
Wenn *vect != NULL werden Laenge und Breite des geometrischen Mittelpunkts berechnet und in das Array vect geschrieben.
Parameter:
L1 Laenge Startpunkt B1 Breite Startpunkt L2 Laenge Endpunkt B2 Breite Endpunkt *vect NULL oder Pointer auf double[2]
Berechnete Werte:
vect[0] Laenge (optional) vect[1] Breite (optional)
Rueckgabewert:
Bogen der Orthodrome
mpGeoZ
double mpGeoZ( | double phi); |
Geozentrische Breite aus geographischer Breite
Parameter:
phi Geographische Breite
Rueckgabewert:
Geozentrische Breite