Fonctions membres publiques | Attributs publics

# Référence de la classe USpeedGameEngine::Math::Vector3D

Classe des vecteurs 3D pour les calculs mathématiques. Plus de détails...

Liste de tous les membres

## Fonctions membres publiques

| Vector3D ()
| Constructeur par défaut.
| Vector3D (float pX, float pY, float pZ)
| Constructeur avec les 3 composantes.
| Vector3D (Math::Vector3D *vector)
| Constructeur de copie par pointeur.
| Vector3D (const Math::Vector3D &vector)
| Constructeur de copie.
| ~Vector3D ()
| Destructeur par défaut.
bool | isUnit ()
| Vérifie si le vecteur est unitaire (longeur proche de 1.0f).
bool | isZero ()
| Vérifie si le vecteur est poinctuel (longeur proche de 0.0f).
float | getX ()
| Accesseur à la composante X.
float | getY ()
| Accesseur à la composante Y.
float | getZ ()
| Accesseur à la composante Z.
void | getValues (float *pX, float *pY, float *pZ)
| Accesseur aux 3 composantes du vecteur.
void | setValues (float pX, float pY, float pZ)
| Définition des 3 composantes du vecteur.
bool | isParallel (Math::Vector3D *vector)
| Détermine si le vecteur courant est parallèle au vecteur fourni.
double | getLength ()
| Calcul de la longueur du vecteur.
double | normalize ()
| Normalisation du vecteur.
void | zeroClamp ()
| En dessous du seuil de précision, les composantes sont mise à zéro.
void | round ()
| Arrondissement des composantes à la précision par défaut de la classe Math.
float | dotProduct (Math::Vector3D *vector)
| Génération d'un point, produit de deux vecteurs.
bool | crossProduct (Math::Vector3D *vect1, Math::Vector3D *vect2)
| Produit en croix de deux vecteurs fournis vers le vecteur courant.
float | getAngleDeg (Math::Vector3D *vector)
| Retourne l'angle en degrés du vecteur avec celui fourni.
float | getAngleRad (Math::Vector3D *vector)
| Retourne l'angle en radian du vecteur avec celui fourni.
void | scale (float scale)
| Modification de l'échelle du vecteur.
void | negate ()
| Inversion des composantes du vecteur.
Math::Vector3D | operator* (const Math::Vector3D &v)
| Produit de deux vecteurs (le courant et celui fourni).
Math::Vector3D | operator+ (const Math::Vector3D &v) const
| Somme de deux vecteurs (le courant et celui fourni).
Math::Vector3D | operator- (const Math::Vector3D &v) const
| Soustraction de deux vecteurs (le courant et celui fourni).
Math::Vector3D | operator- () const
| Version négative du vecteur.
Math::Vector3D & | operator= (const Math::Vector3D &v)
| Affectation d'un vecteur (celui fourni sur le courant).
Math::Vector3D & | operator*= (const float scalar)
| Multiplication puis affectation d'un vecteur par un scalaire.
Math::Vector3D & | operator+= (const Math::Vector3D &v)
| Addition puis affectation d'un vecteur par un scalaire.
Math::Vector3D & | operator-= (const Math::Vector3D &v)
| Soustraction puis affectation d'un vecteur par un scalaire.
bool | operator== (const Vector3D &v) const
| Comparaison d'égalité.
bool | operator!= (const Vector3D &v) const
| Comparaison de différence.

## Attributs publics

float | x
| Composante X du vecteur.
float | y
| Composante Y du vecteur.
float | z
| Composante Z du vecteur.

## Description détaillée

Classe des vecteurs 3D pour les calculs mathématiques.

Auteur:
  U.Speed

## Documentation des constructeurs et destructeur

Math::Vector3D::Vector3D | ( |  | ) |

Constructeur par défaut.

Auteur:
  U.Speed

Math::Vector3D::Vector3D | ( | float | pX,
|  | float | pY,
|  | float | pZ |
| ) |  |  |

Constructeur avec les 3 composantes.

Auteur:
  U.Speed

Paramètres:

  | pX | float : composante X du vecteur
  | pY | float : composante Y du vecteur
  | pZ | float : composante Z du vecteur

Math::Vector3D::Vector3D | ( | Math::Vector3D * | vector | ) |

Constructeur de copie par pointeur.

Auteur:
  U.Speed

Paramètres:

  | vector | Math::Vector3D* : le pointeur d'un vecteur

Math::Vector3D::Vector3D | ( | const Math::Vector3D & | vector | ) |

Constructeur de copie.

Auteur:
  U.Speed

Paramètres:

  | vector | const Math::Vector3D& : le vecteur à copier

Math::Vector3D::~Vector3D | ( |  | ) |

Destructeur par défaut.

Auteur:
  U.Speed

## Documentation des fonctions membres

bool Math::Vector3D::crossProduct | ( | Math::Vector3D * | vect1,
|  | Math::Vector3D * | vect2 |
| ) |  |  |

Produit en croix de deux vecteurs fournis vers le vecteur courant.

Auteur:
  U.Speed

Paramètres:

  | vect1 | Math::Vector3D* : le 1er vecteur
  | vect2 | Math::Vector3D* : le 2ème vecteur

Renvoie:
  bool : `true` si le produit a réussi

float Math::Vector3D::dotProduct | ( | Math::Vector3D * | vector | ) |

Génération d'un point, produit de deux vecteurs.

Auteur:
  U.Speed

Paramètres:

  | vector | Math::Vector3D* : le vecteur

Renvoie:
  double : le résultat

float Math::Vector3D::getAngleDeg | ( | Math::Vector3D * | vector | ) |

Retourne l'angle en degrés du vecteur avec celui fourni.

Auteur:
  U.Speed

Paramètres:

  | vector | Math::Vector3D* : le vecteur supplémentaire

Renvoie:
  float : l'angle

float Math::Vector3D::getAngleRad | ( | Math::Vector3D * | vector | ) |

Retourne l'angle en radian du vecteur avec celui fourni.

Auteur:
  U.Speed

Paramètres:

  | vector | Math::Vector3D* : le vecteur supplémentaire

Renvoie:
  float : l'angle

double Math::Vector3D::getLength | ( |  | ) |

Calcul de la longueur du vecteur.

Auteur:
  U.Speed

Renvoie:
  double : la longueur du vecteur

void Math::Vector3D::getValues | ( | float * | pX,
|  | float * | pY,
|  | float * | pZ |
| ) |  |  |

Accesseur aux 3 composantes du vecteur.

Auteur:
  U.Speed

Paramètres:

  | pX | float* : le pointeur pour accueillir la composante X
  | pY | float* : le pointeur pour accueillir la composante Y
  | pZ | float* : le pointeur pour accueillir la composante Z

float Math::Vector3D::getX | ( |  | ) |

Accesseur à la composante X.

Auteur:
  U.Speed

Renvoie:
  float : la composante X

float Math::Vector3D::getY | ( |  | ) |

Accesseur à la composante Y.

Auteur:
  U.Speed

Renvoie:
  float : la composante Y

float Math::Vector3D::getZ | ( |  | ) |

Accesseur à la composante Z.

Auteur:
  U.Speed

Renvoie:
  float : la composante Z

bool Math::Vector3D::isParallel | ( | Math::Vector3D * | vector | ) |

Détermine si le vecteur courant est parallèle au vecteur fourni.

Auteur:
  U.Speed

Paramètres:

  | vector | Math::Vector3D : le vecteur à comparer

Renvoie:
  bool : `true` si les vecteurs sont parallèles

bool Math::Vector3D::isUnit | ( |  | ) |

Vérifie si le vecteur est unitaire (longeur proche de 1.0f).

Auteur:
  U.Speed

Renvoie:
  bool : `true` pour un vecteur unitaire

bool Math::Vector3D::isZero | ( |  | ) |

Vérifie si le vecteur est poinctuel (longeur proche de 0.0f).

Auteur:
  U.Speed

Renvoie:
  bool : `true` pour un vecteur ponctuel (nul)

void Math::Vector3D::negate | ( |  | ) |

Inversion des composantes du vecteur.

Auteur:
  U.Speed

double Math::Vector3D::normalize | ( |  | ) |

Normalisation du vecteur.

Auteur:
  U.Speed

Renvoie:
  double : la longueur du vecteur

bool Math::Vector3D::operator!= | ( | const Vector3D & | v | ) | const

Comparaison de différence.

Auteur:
  U.Speed

Paramètres:

  | v | const Vector3D& : le vecteur à comparer

Renvoie:
  bool : le résultat de la comparaison

Math::Vector3D Math::Vector3D::operator* | ( | const Math::Vector3D & | v | ) |

Produit de deux vecteurs (le courant et celui fourni).

Auteur:
  U.Speed

Paramètres:

  | v | const Vector3D& : le vecteur à multiplier au vecteur courant

Renvoie:
  Math::Vector3D : le résultat du produit

Math::Vector3D & Math::Vector3D::operator*= | ( | const float | scalar | ) |

Multiplication puis affectation d'un vecteur par un scalaire.

Auteur:
  U.Speed

Paramètres:

  | scalar | const float : le scalaire (mise à l'échelle)

Renvoie:
  Math::Vector3D : le résultat de l'affectation

Math::Vector3D Math::Vector3D::operator+ | ( | const Math::Vector3D & | v | ) | const

Somme de deux vecteurs (le courant et celui fourni).

Auteur:
  U.Speed

Paramètres:

  | v | const Vector3D& : le vecteur à additionner au vecteur courant

Renvoie:
  Math::Vector3D : le résultat de la somme

Math::Vector3D & Math::Vector3D::operator+= | ( | const Math::Vector3D & | v | ) |

Addition puis affectation d'un vecteur par un scalaire.

Auteur:
  U.Speed

Paramètres:

  | v | const Vector3D& : le vecteur

Renvoie:
  Math::Vector3D : le résultat

Math::Vector3D Math::Vector3D::operator- | ( | const Math::Vector3D & | v | ) | const

Soustraction de deux vecteurs (le courant et celui fourni).

Auteur:
  U.Speed

Paramètres:

  | v | const Vector3D& : le vecteur à soustraire au vecteur courant

Renvoie:
  Math::Vector3D : le résultat de la soustraction

Math::Vector3D Math::Vector3D::operator- | ( | void |  | ) | const

Version négative du vecteur.

Auteur:
  U.Speed

Renvoie:
  Math::Vector3D : la version négative

Math::Vector3D & Math::Vector3D::operator-= | ( | const Math::Vector3D & | v | ) |

Soustraction puis affectation d'un vecteur par un scalaire.

Auteur:
  U.Speed

Paramètres:

  | v | const Vector3D& : le vecteur

Renvoie:
  Math::Vector3D : le résultat

Math::Vector3D & Math::Vector3D::operator= | ( | const Math::Vector3D & | v | ) |

Affectation d'un vecteur (celui fourni sur le courant).

Auteur:
  U.Speed

Paramètres:

  | v | const Math::Vector3D& : le vecteur à affecter au vecteur courant

Renvoie:
  Math::Vector3D : le résultat de l'affectation

bool Math::Vector3D::operator== | ( | const Vector3D & | v | ) | const

Comparaison d'égalité.

Auteur:
  U.Speed

Paramètres:

  | v | const Vector3D& : le vecteur à comparer

Renvoie:
  bool : le résultat de la comparaison

void Math::Vector3D::round | ( |  | ) |

Arrondissement des composantes à la précision par défaut de la classe Math.

Auteur:
  U.Speed

void Math::Vector3D::scale | ( | float | scale | ) |

Modification de l'échelle du vecteur.

Auteur:
  U.Speed

Paramètres:

  | scale | float : l'échelle (à multiplier)

void Math::Vector3D::setValues | ( | float | pX,
|  | float | pY,
|  | float | pZ |
| ) |  |  |

Définition des 3 composantes du vecteur.

Auteur:
  U.Speed

Paramètres:

  | pX | float : la composante X
  | pY | float : la composante Y
  | pZ | float : la composante Z

void Math::Vector3D::zeroClamp | ( |  | ) |

En dessous du seuil de précision, les composantes sont mise à zéro.

Auteur:
  U.Speed

La documentation de cette classe a été générée à partir des fichiers suivants :

- src/Math/Vector3D.hpp
- src/Math/Vector3D.cpp
- src/Math/Vector3D_crossProduct.cpp
- src/Math/Vector3D_dotProduct.cpp
- src/Math/Vector3D_getAngleDeg.cpp
- src/Math/Vector3D_getAngleRad.cpp
- src/Math/Vector3D_getLength.cpp
- src/Math/Vector3D_getValues.cpp
- src/Math/Vector3D_getX.cpp
- src/Math/Vector3D_getY.cpp
- src/Math/Vector3D_getZ.cpp
- src/Math/Vector3D_isParallel.cpp
- src/Math/Vector3D_isUnit.cpp
- src/Math/Vector3D_isZero.cpp
- src/Math/Vector3D_negate.cpp
- src/Math/Vector3D_normalize.cpp
- src/Math/Vector3D_operator.cpp
- src/Math/Vector3D_round.cpp
- src/Math/Vector3D_scale.cpp
- src/Math/Vector3D_setValues.cpp
- src/Math/Vector3D_zeroClamp.cpp