gk Namespace Reference

namespace pour regrouper les types et les fonctions. More...

Namespaces

namespace  OBJ

Classes

class  App
 application de base SDL + openGL. consultez le libSDL Programming Guide More...
class  Point2
 point en dimension 2, utilise pour representer les coordonnees de textures d'un sommet, par exemple. More...
class  Vector
 vecteur en dimension 3. More...
class  Color
 represente une quantite d'energie, un tuple <rgba>. More...
class  Point
 representation d'un point de dimension 3. More...
class  HPoint
 representation d'un point homogene de dimension 4, transformation d'un Point par une projection (cf Perspective() et Transform). More...
class  Normal
 representation d'une normale de dimension 3, cf. Vector pour la description des operations. More...
struct  Ray
 representation d'un rayon. More...
struct  Hit
 representation d'un point d'intersection rayon / objet. More...
class  BBox
 representation d'une boite englobante alignee sur les axes (aabox). More...
class  GLManager
 manager pour les ressources openGL crees directement par l'application. More...
class  GLResource
 classe de base des resources openGL, referencees par l'application, proprietes du contexte openGL. cf GLResource, gestion des objets openGL. More...
struct  Pixel
 representation d'un pixel 'classique' rgba. More...
struct  HDRPixel
 representation d'un pixel 'hdr' rgba. More...
class  TImage
 utilisation interne. More...
class  ImageIO
 operations d'entree/sortie sur les formats standards, jpg, bmp, png, tiff, etc. More...
class  HDRImageIO
 operations d'entree/sortie sur une image .hdr. More...
struct  IOFileSystem
struct  IOName
 utilisation interne. nommage d'un objet importe. More...
class  IOManager
 manager pour les 'objets' importes a partir d'un fichier. More...
class  IOResource
 classe de base des resources importees depuis un fichier, referencees par l'application, proprietes du gk::IOManager. More...
struct  SubMesh
 representation d'une partie d'un maillage associee a une matiere unique identifiee par son indice 'material_id'. More...
struct  MeshBuffer
 representation d'un ensemble d'attributs generiques des sommets du maillage. equivalent a un GLBuffer. More...
class  Mesh
 representation d'un maillage triangule. More...
class  MeshIO
 manager pour importer des maillages. More...
struct  MeshMaterial
 representation d'une matiere. More...
class  MeshMaterialIO
 manager pour importer des matieres. More...
class  Name
 representation d'un identifiant par une chaine de caracteres et sa valeur de hachage. More...
struct  PNTriangle
 representation d'un triangle 'geometrique'. More...
class  ProfilerClock
 horloge systeme, duree mesuree en micro secondes. More...
class  StatsCounter
 stocke un historique de valeurs de mesures. More...
class  StatsCounterIO
 manager de compteurs : conserve l'ensemble des compteurs crees par l'application et ecrit leur historique dans des fichiers textes portant le nom es compteurs. More...
class  ScopedTimer
 mesure le temps d'execution d'un bloc et enregistre la mesure dans un compteur nomme. More...
class  ScopedCounter
 creation / acces simplifie a un compteur nomme, gk::StatsCounter. More...
class  TimerSummary
 retrouve un compteur gk::StatsCounter et renvoie un resume des mesures du compteur. les mesures sont interpretees comme des durees en micro-secondes. More...
class  CounterSummary
 retrouve un compteur et renvoie un resume des mesures du compteur. les mesures ne sont pas "interpretees", cf TimerSummary More...
class  ISceneObject
 classe de base d'un objet de la scene. More...
class  Scene
 representation d'une scene hierarchique. More...
struct  TextSection
 representation d'une section d'un fichier texte. More...
class  TextFile
 stockage et lecture d'un fichier texte, source de shader, etc. More...
class  TextFileIO
 manager pour importer des ficheirs textes, sources, shaders, etc. More...
struct  Matrix4x4
 representation d'une matrice homogene 4x4. More...
class  Transform
 representation d'une transformation == un changement de repere, du repere '1' vers le repere '2'. More...
struct  Triangle
 representation d'un triangle 'geometrique'. More...
class  GLShaderObject
 utilisation interne. abstraction d'un shader object, ressource openGL. More...
class  GLVertexShader
 representation d'un vertex shader object, objet openGL. More...
class  GLFragmentShader
 representation d'un fragment shader object, objet openGL. More...
class  GLGeometryShader
class  GLControlShader
class  GLEvaluationShader
class  GLVertexShaderIO
class  GLFragmentShaderIO
class  GLGeometryShaderIO
class  GLControlShaderIO
class  GLEvaluationShaderIO
class  GLShaderProgram
 representation d'un shader program openGL. More...
class  GL2ShaderProgram
 shader program openGL2, compose de :

  • vertex shader,
  • fragment shader.
More...
class  GL3ShaderProgram
 shader program openGL 3, compose de :

  • vertex shader,
  • geometry shader,
  • fragment shader.
More...
class  GL4ShaderProgram
 shader program openGL 4, compose de :

  • vertex shader,
  • tesselation control shader,
  • tesselation evaluation shader,
  • geometry shader,
  • fragment shader.
More...

Typedefs

typedef Vector Vector3
 par habitude, declare le type Vecteur3
typedef Color Energy
 declare une couleur, un tripet <rgb> comme une couleur.
typedef Normal Tangent
 une tangente se transforme de la meme maniere qu'une normale.
typedef TImage< HDRPixelHDRImage
 declaration d'une image hdr, pixels rgba.
typedef TImage< PixelImage
 declaration d'une image 'classique', avec pixels rgba.

Functions

BBox Union (const BBox &b, const Point &p)
 ajoute un point a l'aabox et renvoie la nouvelle aabox.
BBox Union (const BBox &b, const BBox &b2)
 ajoute une aabox dans une autre et renvoie la nouvelle aabox.
std::ostream & operator<< (std::ostream &os, const Vector &v)
Vector operator* (float f, const Vector &v)
float Dot (const Vector &v1, const Vector &v2)
 produit scalaire de 2 vecteurs.
float AbsDot (const Vector &v1, const Vector &v2)
 valeur absolue du produit scalaire de 2 vecteurs.
float ZeroDot (const Vector &v1, const Vector &v2)
 max(0, dot) du produit scalaire de 2 vecteurs.
Vector Cross (const Vector &v1, const Vector &v2)
 produit vectoriel de 2 vecteurs.
Vector Cross (const Vector &v1, const Normal &v2)
 produit vectoriel d'un vecteur et d'une normale.
Vector Cross (const Normal &v1, const Vector &v2)
 produit vectoriel d'une normale et d'un vecteur.
Vector Normalize (const Vector &v)
 renvoie un vecteur de longueur 1 de meme direction que v.
void CoordinateSystem (const Vector &v1, Vector *v2, Vector *v3)
 construit un repere orthogonal a partir d'un vecteur v1.
float Distance (const Point &p1, const Point &p2)
 renvoie la distance entre 2 points.
float DistanceSquared (const Point &p1, const Point &p2)
 renvoie le carre de la distance entre 2 points.
std::ostream & operator<< (std::ostream &os, const Point &v)
Point operator* (float f, const Point &p)
Normal operator* (float f, const Normal &n)
Normal Normalize (const Normal &n)
 renvoie une normale de meme direction, mais de longeur 1.
float Dot (const Normal &n1, const Vector &v2)
 produit scalaire d'une normale et d'un vecteur.
float Dot (const Vector &v1, const Normal &n2)
 produit scalaire d'un vecteur et d'une normale.
float Dot (const Normal &n1, const Normal &n2)
 produit scalaire de 2 normales.
float AbsDot (const Normal &n1, const Vector &v2)
 valeur absolue du produit scalaire d'une normale et d'un vecteur.
float AbsDot (const Vector &v1, const Normal &n2)
 valeur absolue du produit scalaire d'un vecteur et d'une normale.
float AbsDot (const Normal &n1, const Normal &n2)
 valeur absolue du produit scalaire de 2 normales.
float ZeroDot (const Normal &v1, const Vector &v2)
 max(0, dot) du produit scalaire de 2 vecteurs.
float ZeroDot (const Vector &v1, const Normal &v2)
 max(0, dot) du produit scalaire de 2 vecteurs.
float ZeroDot (const Normal &v1, const Normal &v2)
 max(0, dot) du produit scalaire de 2 vecteurs.
std::ostream & operator<< (std::ostream &os, const Normal &v)
std::ostream & operator<< (std::ostream &os, Ray &r)
std::ostream & operator<< (std::ostream &os, const BBox &b)
float Lerp (const float t, const float v1, const float v2)
 interpolation lineaire entre 2 reels, x= (1 - t) v1 + t v2
float Clamp (const float value, const float low, const float high)
 limite une valeur entre un min et un max.
int Clamp (const int value, const int low, const int high)
 limite une valeur entre un min et un max.
float Radians (const float deg)
 conversion degres vers radians.
float Degrees (const float rad)
 conversion radians vers degres.
Vector SphericalDirection (float sintheta, float costheta, float phi)
 renvoie un vecteur dont la direction est representee en coordonness polaires.
Vector SphericalDirection (float sintheta, float costheta, float phi, const Vector &x, const Vector &y, const Vector &z)
 renvoie les composantes d'un vecteur dont la direction est representee en coordonnees polaires.
float SphericalTheta (const Vector &v)
 renvoie l'angle theta d'un vecteur avec la normale, l'axe Z, (utilisation dans un repere local).
float SphericalPhi (const Vector &v)
 renvoie l'angle phi d'un vecteur avec un vecteur tangent, l'axe X, (utilisation dans un repere local).
int MaterialLoadFromMTL (const std::string &filename)
 lit un fichier .mtl et renvoie la liste de matieres decrites dans le fichier.
int MeshLoadFromOBJ (const std::string &filename, Mesh *mesh)
 charge un maillage triangule et ses matieres a partir d'un maya .obj et .mtl.
bool operator== (const Name &a, const Name &b)
bool operator!= (const Name &a, const Name &b)
bool operator> (const Name &a, const Name &b)
bool operator< (const Name &a, const Name &b)
int compare (const Name &a, const Name &b)
GLShaderProgramcreateShaderProgram (const std::string &vertex, const std::string &fragment)
 gestion 'auto' des ressources openGL : pour les shader programs opengl > 2.
GL3ShaderProgramcreateShaderProgram3 (const std::string &vertex, const std::string &geometry, const std::string &fragment)
 gestion 'auto' des ressources openGL : pour les shader programs opengl > 3.
GL4ShaderProgramcreateShaderProgram4 (const std::string &vertex, const std::string &control, const std::string &evaluation, const std::string &geometry, const std::string &fragment)
 gestion 'auto' des ressources openGL : pour les shader programs opengl > 4.
std::ostream & operator<< (std::ostream &os, const Transform &t)
Transform Translate (const Vector &delta)
 renvoie la transformation associee a une translatation du vecteur delta.
Transform Scale (float x, float y, float z)
 renvoie la transformation associee au changement d'echelle (x, y, z).
Transform Scale (float v)
 renvoie la transformation associee au changement d'echelle (v, v, v).
Transform RotateX (float angle)
 renvoie la transformation associee a une rotation autour de l'axe X, angle est en degres.
Transform RotateY (float angle)
 renvoie la transformation associee a une rotation autour de l'axe Y, angle est en degres.
Transform RotateZ (float angle)
 renvoie la transformation associee a une rotation autour de l'axe Z, angle est en degres.
Transform Rotate (float angle, const Vector &axis)
 renvoie la transformation associee a une rotation autour d'un vecteur, angle est en degres.
Transform LookAt (const Point &pos, const Point &look, const Vector &up)
 renvoie la transformation camera (View).
Transform Orthographic (float znear, float zfar)
 renvoie la transformation associee a une camera orthographique (Projection)
Transform Orthographic (const float left, const float right, const float bottom, const float top, const float znear, const float zfar)
 renvoie la transformation associee a une camera orthographique (Projection)
Transform Perspective (float fov, float aspect, float znear, float zfar)
 renvoie la transformation associee a une camera perspective (Projection).
Transform Viewport (float width, float height)
 renvoie la transformation entre le repere projectif de la camera et le repere fenetre (Viewport).

Detailed Description

namespace pour regrouper les types et les fonctions.


Function Documentation

BBox gk::Union ( const BBox &  b,
const Point &  p 
)

ajoute un point a l'aabox et renvoie la nouvelle aabox.

ajoute un point dans l'aabox.

References gk::BBox::pMin.

BBox gk::Union ( const BBox &  b,
const BBox &  b2 
)

ajoute une aabox dans une autre et renvoie la nouvelle aabox.

ajoute une autre aabox.

References gk::BBox::pMin.

 All Classes Namespaces Functions Variables Typedefs Friends
Generated on Fri Dec 17 16:19:17 2010 for gKitGL by  doxygen 1.6.3