Castor3D 0.16.0
Multiplatform 3D engine
Fonctions membres publiques | Amis | Liste de tous les membres
Référence de la classe castor::PlaneEquation

#include <PlaneEquation.hpp>

Fonctions membres publiques

CU_API PlaneEquation ()=default
 Constructeur.
 
CU_API PlaneEquation (Point3f const &p1, Point3f const &p2, Point3f const &p3)
 Constructeur.
 
CU_API PlaneEquation (Point3f const &normal, Point3f const &point)
 Constructeur.
 
CU_API PlaneEquation (Point3f const &normal, float d)
 Constructeur.
 
CU_API void set (Point3f const &p1, Point3f const &p2, Point3f const &p3)
 Calcule l'équation du plan en fonction de 3 points.
 
CU_API void set (Point3f const &normal, Point3f const &point)
 Définit l'équation du plan.
 
CU_API void set (Point3f const &normal, float d)
 Définit l'équation du plan.
 
CU_API bool isParallel (PlaneEquation const &plane) const
 Vérifie si ce plan est parallèle à un autre, id est leurs normales sont parallèles.
 
CU_API float distance (Point3f const &point) const
 Calcule la distance entre un point et ce plan.
 
CU_API Point3f project (Point3f const &point) const
 Récupère la projection d'un point sur ce plan.
 
CU_API bool intersects (PlaneEquation const &plane, Line3D< float > &line) const
 Vérifie si ce plan en croise un autre, donne la ligne d'intersetion si elle existe.
 
CU_API bool intersects (PlaneEquation const &plane1, PlaneEquation const &plane2, Point3f &intersection) const
 Vérifie si ce plan en croise deux autres, donne le point d'intersetion si il existe.
 
Point3f const & getNormal () const
 
float getDistance () const
 

Amis

CU_API bool operator== (PlaneEquation const &, PlaneEquation const &)
 Vérifie si un plan est égal à un autre.
 
CU_API bool operator!= (PlaneEquation const &, PlaneEquation const &)
 Vérifie si ce plan est différent d'un autre.
 

Documentation des constructeurs et destructeur

◆ PlaneEquation() [1/4]

CU_API castor::PlaneEquation::PlaneEquation ( )
default

Constructeur.

◆ PlaneEquation() [2/4]

CU_API castor::PlaneEquation::PlaneEquation ( Point3f const & p1,
Point3f const & p2,
Point3f const & p3 )

Constructeur.

Paramètres
[in]p1Le premier point appartenant au plan.
[in]p2Le second point appartenant au plan.
[in]p3Le troisième point appartenant au plan.

◆ PlaneEquation() [3/4]

CU_API castor::PlaneEquation::PlaneEquation ( Point3f const & normal,
Point3f const & point )

Constructeur.

Paramètres
[in]normalLa normale du plan.
[in]pointUn point appartenant au plan.

◆ PlaneEquation() [4/4]

CU_API castor::PlaneEquation::PlaneEquation ( Point3f const & normal,
float d )

Constructeur.

Paramètres
[in]normalLa normale du plan.
[in]dLa distance du plan.

Documentation des fonctions membres

◆ distance()

CU_API float castor::PlaneEquation::distance ( Point3f const & point) const

Calcule la distance entre un point et ce plan.

Paramètres
[in]pointLe point
Renvoie
La distance, positive si le point est du même côté que la normale du plan

◆ getDistance()

float castor::PlaneEquation::getDistance ( ) const
inline
Renvoie
La distance entre le plan et l'origine.

◆ getNormal()

Point3f const & castor::PlaneEquation::getNormal ( ) const
inline
Renvoie
La normale du plan.

◆ intersects() [1/2]

CU_API bool castor::PlaneEquation::intersects ( PlaneEquation const & plane,
Line3D< float > & line ) const

Vérifie si ce plan en croise un autre, donne la ligne d'intersetion si elle existe.

A faire
Find origin point
Paramètres
[in]planeLe plan à tester
[out]lineLa ligne d'intersection
Renvoie
true s'il y a une intersection

◆ intersects() [2/2]

CU_API bool castor::PlaneEquation::intersects ( PlaneEquation const & plane1,
PlaneEquation const & plane2,
Point3f & intersection ) const

Vérifie si ce plan en croise deux autres, donne le point d'intersetion si il existe.

Paramètres
[in]plane1Le premier plan à tester
[in]plane2Le second plan à tester
[out]intersectionLe point d'intersection
Renvoie
true s'il y a un point d'intersection entre les 3 plans

◆ isParallel()

CU_API bool castor::PlaneEquation::isParallel ( PlaneEquation const & plane) const

Vérifie si ce plan est parallèle à un autre, id est leurs normales sont parallèles.

Paramètres
[in]planeLe plan a tester

◆ project()

CU_API Point3f castor::PlaneEquation::project ( Point3f const & point) const

Récupère la projection d'un point sur ce plan.

Paramètres
[in]pointLe point à projeter
Renvoie
Le résultat de la projection

◆ set() [1/3]

CU_API void castor::PlaneEquation::set ( Point3f const & normal,
float d )

Définit l'équation du plan.

Paramètres
[in]normalLa normale du plan.
[in]dLa distance du plan.

◆ set() [2/3]

CU_API void castor::PlaneEquation::set ( Point3f const & normal,
Point3f const & point )

Définit l'équation du plan.

Paramètres
[in]normalLa normale du plan.
[in]pointUn point appartenant au plan.

◆ set() [3/3]

CU_API void castor::PlaneEquation::set ( Point3f const & p1,
Point3f const & p2,
Point3f const & p3 )

Calcule l'équation du plan en fonction de 3 points.

Paramètres
[in]p1Le premier point appartenant au plan.
[in]p2Le second point appartenant au plan.
[in]p3Le troisième point appartenant au plan.

Documentation des fonctions amies et associées

◆ operator!=

CU_API bool operator!= ( PlaneEquation const & ,
PlaneEquation const &  )
friend

Vérifie si ce plan est différent d'un autre.

◆ operator==

CU_API bool operator== ( PlaneEquation const & ,
PlaneEquation const &  )
friend

Vérifie si un plan est égal à un autre.

Remarques
Deux plans sont égaux si ils sont parallèles et si leurs normales et coeff sont égaux

La documentation de cette classe a été générée à partir du fichier suivant :