Castor3D 0.16.0
Multiplatform 3D engine
Fonctions membres publiques | Attributs publics | Liste de tous les membres
Référence de la classe castor3d::Ray

#include <Ray.hpp>

Fonctions membres publiques

C3D_API Ray (castor::Position const &point, Camera const &camera)
 Constructeur depuis les coordonnées de la souris et une caméra.
 
C3D_API Ray (int x, int y, Camera const &camera)
 Constructeur depuis les coordonnées de la souris et une caméra.
 
C3D_API Ray (castor::Point3f const &origin, castor::Point3f const &direction)
 Constructeur depuis une origine et une direction.
 
C3D_API castor::Intersection intersects (castor::Point3f const &pt1, castor::Point3f const &pt2, castor::Point3f const &pt3, float &distance) const
 Dit si le rayon croise un triangle donné.
 
C3D_API castor::Intersection intersects (Face const &face, castor::Matrix4x4f const &transform, Submesh const &submesh, float &distance) const
 Dit si le rayon croise la face donnée.
 
C3D_API castor::Intersection intersects (castor::Point3f const &point, float &distance) const
 Dit si le point donné se trouve sur le rayon.
 
C3D_API castor::Intersection intersects (castor::BoundingBox const &box, float &distance) const
 Dit si le rayon croise la Combo box donnée.
 
C3D_API castor::Intersection intersects (castor::BoundingSphere const &sphere, float &distance) const
 Dit si le rayon croise la sphère donnée.
 
C3D_API castor::Intersection intersects (GeometryRPtr geometry, Face &nearestFace, SubmeshRPtr &nearestSubmesh, float &distance) const
 Dit si le rayon croise la géométrie donnée.
 
C3D_API bool projectVertex (castor::Point3f const &point, castor::Point3f &result) const
 

Attributs publics

castor::Point3f m_origin
 
castor::Point3f m_direction
 

Documentation des constructeurs et destructeur

◆ Ray() [1/3]

C3D_API castor3d::Ray::Ray ( castor::Position const & point,
Camera const & camera )

Constructeur depuis les coordonnées de la souris et une caméra.

Paramètres
[in]pointLes coordonnées de la souris.
[in]cameraLa caméra depuis laquelle le rayon est récupéré.

◆ Ray() [2/3]

C3D_API castor3d::Ray::Ray ( int x,
int y,
Camera const & camera )

Constructeur depuis les coordonnées de la souris et une caméra.

Paramètres
[in]x,yLes coordonnées de la souris.
[in]cameraLa caméra depuis laquelle le rayon est récupéré.

◆ Ray() [3/3]

C3D_API castor3d::Ray::Ray ( castor::Point3f const & origin,
castor::Point3f const & direction )

Constructeur depuis une origine et une direction.

Paramètres
[in]originL'origine du rayon.
[in]directionLa direction du rayon.

Documentation des fonctions membres

◆ intersects() [1/6]

C3D_API castor::Intersection castor3d::Ray::intersects ( castor::BoundingBox const & box,
float & distance ) const

Dit si le rayon croise la Combo box donnée.

Paramètres
[in]boxLa boîte à tester.
[out]distanceReçoit la distance.
Renvoie
castor::Intersection::eIn ou castor::Intersection::eOut.

◆ intersects() [2/6]

C3D_API castor::Intersection castor3d::Ray::intersects ( castor::BoundingSphere const & sphere,
float & distance ) const

Dit si le rayon croise la sphère donnée.

Paramètres
[in]sphereLa sphère à tester.
[out]distanceReçoit la distance.
Renvoie
castor::Intersection::eIn ou castor::Intersection::eOut.

◆ intersects() [3/6]

C3D_API castor::Intersection castor3d::Ray::intersects ( castor::Point3f const & point,
float & distance ) const

Dit si le point donné se trouve sur le rayon.

Paramètres
[in]pointLe point à tester.
[out]distanceReçoit la distance.
Renvoie
castor::Intersection::eIn ou castor::Intersection::eOut.

◆ intersects() [4/6]

C3D_API castor::Intersection castor3d::Ray::intersects ( castor::Point3f const & pt1,
castor::Point3f const & pt2,
castor::Point3f const & pt3,
float & distance ) const

Dit si le rayon croise un triangle donné.

Paramètres
[in]pt1Le premier sommet du triangle.
[in]pt2Le second sommet du triangle.
[in]pt3Le troisième sommet du triangle.
[out]distanceReçoit la distance.
Renvoie
castor::Intersection::eIn ou castor::Intersection::eOut.

◆ intersects() [5/6]

C3D_API castor::Intersection castor3d::Ray::intersects ( Face const & face,
castor::Matrix4x4f const & transform,
Submesh const & submesh,
float & distance ) const

Dit si le rayon croise la face donnée.

Paramètres
[in]faceLa face donnée.
[in]transformLa matrice de transformation des sommets de la face.
[in]submeshLe sous-maillage contenant la face.
[out]distanceReçoit la distance.
Renvoie
castor::Intersection::eIn ou castor::Intersection::eOut.

◆ intersects() [6/6]

C3D_API castor::Intersection castor3d::Ray::intersects ( GeometryRPtr geometry,
Face & nearestFace,
SubmeshRPtr & nearestSubmesh,
float & distance ) const

Dit si le rayon croise la géométrie donnée.

Paramètres
[in]geometryLa géométrie à tester.
[out]nearestFaceReçoit la face croisée.
[out]nearestSubmeshReçoit le sous-maillage croisé.
[out]distanceReçoit la distance.
Renvoie
castor::Intersection::eIn ou castor::Intersection::eOut.

◆ projectVertex()

C3D_API bool castor3d::Ray::projectVertex ( castor::Point3f const & point,
castor::Point3f & result ) const

Documentation des données membres

◆ m_direction

castor::Point3f castor3d::Ray::m_direction

La direction du rayon.

◆ m_origin

castor::Point3f castor3d::Ray::m_origin

L'origine du rayon.


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