GalaxyBox Class Reference

Quadran Galactique. C'est un singleton. More...

#include <GalaxyBox.h>

List of all members.

Public Member Functions

 GalaxyBox (SceneManager *SceneMgr)
 Constructeur.
virtual ~GalaxyBox ()
 Destructeur.
void show ()
 Affiche le contenu de la galaxie.
void hide ()
 Efface le contenu de la galaxie.
void translate (Vector3 TranslationVector)
 Déplace l'ensemble du GalaxyBox le long d'un vecteur.
void rotate (Real Zrotation, Real Xrotation, Real Yrotation)
 Cette fonction fait pivoter l'ensemble du GalaxyBox sur lui même (3 axes).
void setShipCoordinates (Real x, Real y, Real z)
 Positionne le vaisseau dans la galaxie (unit = AL).
Vector3 getShipCoordinates ()
 Renvoie la position du vaisseau dans la galaxie.
void setShipLocalPosition (Real x, Real y, Real z)
 Positionne le vaisseau de manière précise dans un systeme solaire.
Vector3 getPosition ()
 Renvoie la position du centre galactique (Sol) p/r au RootNode.
void loadAllStars ()
 Charge toutes les étoiles de toutes les bases de données.
void createStars ()
 Affiche toutes les étoiles du tableau (sous-ensemble de la base de données Celestia).
void removeSolarSys ()
 Supprime le système solaire.
Vector3 getStarPosition ()
 Renvoie la position du Systeme Solaire par rapport au GalaxyBox.
String getSystemParameter (int index)
 Renvoie quelques parametres concernant le systeme solaire.
void _changeStar ()
 Change l'étoile (DEBUG).

Static Public Member Functions

static GalaxyBoxgetSingletonPtr (void)
 Renvoie un pointeur sur l'objet (unique) GalaxyBox.

Protected Member Functions

bool frameStarted (const FrameEvent &evt)
 Gestion de la dynamique de l'univers.
void setMainStarLight (bool on)
 Allume ou éteint la lumière de l'étoile principale du système solaire le plus proche.
void addLensFlare ()
 Crée l'effet de LensFlare.
int loadStars (String filename)
 Charge les étoiles d'un fichier DATA.

Protected Attributes

SceneManager * mSceneMgr
Camera * mCamera
SceneNode * mGalaxyPivotNode
 Node central de la galaxie.
SceneNode * mGalaxyNode
 Node pour tous les objets de la galaxie (faible précision).
SceneNode * mLocalNode
 Node pour les objets proche du vaisseau (besoin de précision).
bool mLocalMode
 TRUE si on est en mode local (cad dans un systeme solaire).
BillboardSet * mFarStarsSet
 Set of billboards for visible stars.
CatalogStar ** pStars
 Tableau des catalog-stars proches du vaisseau.
int mNbStars
 Nombre reel d'étoiles dans le tableau.
CatalogStarmNearestStar
 L'étoile la plus proche du vaisseau (si < 1 jour.lum).
Vector3 mShipCoordinates
 Les coordonnées du vaisseau dans la galaxie (unit=AL).
Vector3 mShipLocalPos
 Position précise du vaisseau p/r au systeme solaire (unit=wu).
ArchipelmArchipel
 Un archipel d'asteroide (si on est dedans).
SolarSystemmSolarSys
 Un systeme solaire (si on est proche d'ne étoile).
LensFlaremLens
 Un effet de lensflare (lié à l'etoile du systeme solaire).


Detailed Description

Quadran Galactique. C'est un singleton.

Il gere tous les objets de type stellaire qui se trouvent dans le meme quadran galactique que le vaisseau. Le vaisseau TheShip restant immobile, c'est, en fait, le quadran qui se déplace vers l'arrière quand le vaisseau avance.

Note sur les précisions:


Constructor & Destructor Documentation

GalaxyBox::GalaxyBox SceneManager *  SceneMgr  ) 
 

Constructeur.

GalaxyBox::~GalaxyBox  )  [virtual]
 

Destructeur.


Member Function Documentation

void GalaxyBox::_changeStar  ) 
 

Change l'étoile (DEBUG).

void GalaxyBox::addLensFlare  )  [protected]
 

Crée l'effet de LensFlare.

void GalaxyBox::createStars  ) 
 

Affiche toutes les étoiles du tableau (sous-ensemble de la base de données Celestia).

bool GalaxyBox::frameStarted const FrameEvent &  evt  )  [protected]
 

Gestion de la dynamique de l'univers.

TODO : ne pas passer à chaque tour ...

Vector3 GalaxyBox::getPosition  ) 
 

Renvoie la position du centre galactique (Sol) p/r au RootNode.

Vector3 GalaxyBox::getShipCoordinates  ) 
 

Renvoie la position du vaisseau dans la galaxie.

Position par rapport au soleil "Sol", unit = al

GalaxyBox * GalaxyBox::getSingletonPtr void   )  [static]
 

Renvoie un pointeur sur l'objet (unique) GalaxyBox.

Vector3 GalaxyBox::getStarPosition  ) 
 

Renvoie la position du Systeme Solaire par rapport au GalaxyBox.

Elle correspond à celle de l'étoile, qui est en son centre.

String GalaxyBox::getSystemParameter int  index  ) 
 

Renvoie quelques parametres concernant le systeme solaire.

Parameters:
index identifiant du paramètre demandé.
  • 1 : renvoie le catalog ID du système solaire.
  • 2 : renvoie le nom du système solaire.
  • 3 : renvoie le nombre de planetes du systeme solaire.
  • 4 : renvoie le spectre de l'étoile

void GalaxyBox::hide  ) 
 

Efface le contenu de la galaxie.

void GalaxyBox::loadAllStars  ) 
 

Charge toutes les étoiles de toutes les bases de données.

int GalaxyBox::loadStars String  filename  )  [protected]
 

Charge les étoiles d'un fichier DATA.

void GalaxyBox::removeSolarSys  ) 
 

Supprime le système solaire.

void GalaxyBox::rotate Real  Zrotation,
Real  Xrotation,
Real  Yrotation
 

Cette fonction fait pivoter l'ensemble du GalaxyBox sur lui même (3 axes).

Utilisé généralement quand on fait pivoter l'univers autour d'un vaisseau (plutot que l'inverse).

void GalaxyBox::setMainStarLight bool  on  )  [protected]
 

Allume ou éteint la lumière de l'étoile principale du système solaire le plus proche.

void GalaxyBox::setShipCoordinates Real  x,
Real  y,
Real  z
 

Positionne le vaisseau dans la galaxie (unit = AL).

Peut etre interprété de différentes façon.

  • soit la position du vaisseau par rapport au soleil "Sol" (point 0 de la galaxie)
  • soit la position inverse du point 0 de la galaxie par rapport au vaisseau.
  • En pratique, c'est la deuxième vision qui est appliquée: On positionne la galaxie sur une position de départ, et le ship est en (0.0.0) par rapport au rootNode.

void GalaxyBox::setShipLocalPosition Real  x,
Real  y,
Real  z
 

Positionne le vaisseau de manière précise dans un systeme solaire.

unit = wu (world units)

void GalaxyBox::show  ) 
 

Affiche le contenu de la galaxie.

void GalaxyBox::translate Vector3  TranslationVector  ) 
 

Déplace l'ensemble du GalaxyBox le long d'un vecteur.

Utilisé généralement quand on fait deplacer l'univers autour d'un vaisseau (plutot que l'inverse).


Member Data Documentation

Archipel* GalaxyBox::mArchipel [protected]
 

Un archipel d'asteroide (si on est dedans).

Camera* GalaxyBox::mCamera [protected]
 

BillboardSet* GalaxyBox::mFarStarsSet [protected]
 

Set of billboards for visible stars.

SceneNode* GalaxyBox::mGalaxyNode [protected]
 

Node pour tous les objets de la galaxie (faible précision).

SceneNode* GalaxyBox::mGalaxyPivotNode [protected]
 

Node central de la galaxie.

LensFlare* GalaxyBox::mLens [protected]
 

Un effet de lensflare (lié à l'etoile du systeme solaire).

bool GalaxyBox::mLocalMode [protected]
 

TRUE si on est en mode local (cad dans un systeme solaire).

SceneNode* GalaxyBox::mLocalNode [protected]
 

Node pour les objets proche du vaisseau (besoin de précision).

int GalaxyBox::mNbStars [protected]
 

Nombre reel d'étoiles dans le tableau.

CatalogStar* GalaxyBox::mNearestStar [protected]
 

L'étoile la plus proche du vaisseau (si < 1 jour.lum).

SceneManager* GalaxyBox::mSceneMgr [protected]
 

Vector3 GalaxyBox::mShipCoordinates [protected]
 

Les coordonnées du vaisseau dans la galaxie (unit=AL).

Vector3 GalaxyBox::mShipLocalPos [protected]
 

Position précise du vaisseau p/r au systeme solaire (unit=wu).

SolarSystem* GalaxyBox::mSolarSys [protected]
 

Un systeme solaire (si on est proche d'ne étoile).

CatalogStar** GalaxyBox::pStars [protected]
 

Tableau des catalog-stars proches du vaisseau.


The documentation for this class was generated from the following files:
Generated on Mon Mar 27 21:33:14 2006 for Long Forgotten Earth by  doxygen 1.4.6-NO