#include <StarsDatabase.h>
Public Member Functions | |
StarDatabase (CatalogStar **StarArray, int sizeArray, String filename) | |
Contructeur. | |
virtual | ~StarDatabase () |
Destructeur. | |
int | readStars (int starNumber=ALL) |
Charge le contenu du fichier des étoiles stars.dat au format CELESTIA. | |
CatalogStar * | getClosestStar () |
Renvoie l'étoile la plus proche de la position actuelle, ou NULL si elle est plus loin que 1 jl. | |
Protected Member Functions | |
bool | openFile (String filename) |
Ouvre en lecture un fichier de type CELESTIA, et vérifie son entête. | |
Real | getDistance (Vector3 StarCoord) |
Cette fonction renvoie la distance jusqu'à l'étoile fournie en paramètre. | |
bool | isClosest (Real SQ_Distance) |
Cette fonction indique si le vaisseau se trouve dans le voisinage proche de cette étoile. | |
bool | isVisible (Real SQ_Distance, Real M) |
Cette fonction indique si l'étoile est visible à cette distance. | |
bool | isInQuadrant (Vector3 StarCoord) |
Renvoie TRUE si cette étoile est proche de la position actuelle. | |
Protected Attributes | |
ifstream | starFile |
Fichier Celestia à lire. | |
int | mStarsInFile |
Nombre d'étoiles dans le fichier. | |
CatalogStar ** | pStars |
Pointeur sur le tableau des étoiles à remplir. | |
int | mMaxStars |
Taille du tableau des étoiles. | |
int | mStarIndex |
index courant dans le tableau. | |
CatalogStar * | mClosestStar |
Pointeur l'étoile la plus proche du vaisseau. | |
Real | mClosestDist |
Distance de l'étoile la plus proche (unit = AL). | |
Vector3 | mShipCoord |
Coordonnées du vaisseau dans l'univers (unit = AL). | |
int | mNormalStarCount |
Compteur pour statistiques. | |
int | mWhiteDwarfCount |
Compteur pour statistiques. | |
int | mNeutronStarCount |
Compteur pour statistiques. | |
int | mBlackHoleCount |
Compteur pour statistiques. |
TODO : interface avec les fichiers d'objets (archipels, epaves, trous noirs) -header = CELSTARS -version = 0x0001 -starcount = 0x87B70100.....0001B787.....=112519 = Nombre d'étoiles dans le fichier. -catalog No = 0x01000000.....00000001.....= No de catalog de l'étoile -position X = 0x654D6644.....float........= Position de l'étoile -position Y = 0x0F7C8041.....float........ unit = AL -position Z = 0xB754DFC0.....float........ origin = Sun -Abs magn = 0xD701.........0x01D7........=471 = 1.84 * 256 -Spect. Type= 0x5803.........0x0358........champ de bits Exemple 0x0358 = 0000 0011 0101 1000 soit = tttt ssss cccc llll
|
Contructeur.
|
|
Destructeur.
|
|
Renvoie l'étoile la plus proche de la position actuelle, ou NULL si elle est plus loin que 1 jl. On considère que l'on entre dans un systeme solaire, si on est à moins de 1 jour-lumière de l'étoile. |
|
Cette fonction renvoie la distance jusqu'à l'étoile fournie en paramètre.
|
|
Cette fonction indique si le vaisseau se trouve dans le voisinage proche de cette étoile.
|
|
Renvoie TRUE si cette étoile est proche de la position actuelle. Méthode basée sur un découpage de l'univers en cubes (quadrans galactiques) |
|
Cette fonction indique si l'étoile est visible à cette distance. Méthode basée sur la magnitude apparente.
|
|
Ouvre en lecture un fichier de type CELESTIA, et vérifie son entête.
|
|
Charge le contenu du fichier des étoiles stars.dat au format CELESTIA.
|
|
Compteur pour statistiques.
|
|
Distance de l'étoile la plus proche (unit = AL).
|
|
Pointeur l'étoile la plus proche du vaisseau.
|
|
Taille du tableau des étoiles.
|
|
Compteur pour statistiques.
|
|
Compteur pour statistiques.
|
|
Coordonnées du vaisseau dans l'univers (unit = AL).
|
|
index courant dans le tableau.
|
|
Nombre d'étoiles dans le fichier.
|
|
Compteur pour statistiques.
|
|
Pointeur sur le tableau des étoiles à remplir.
|
|
Fichier Celestia à lire.
|