CPP-TOOLBOX
Loading...
Searching...
No Matches
Transform Class Reference

#include <transform.hpp>

Public Member Functions

 Transform (glm::vec3 translation=glm::vec3(0), glm::vec3 rotation=glm::vec3(0), glm::vec3 scale=glm::vec3(1), const TransformApplicationOrder &transform_application_order=TransformApplicationOrder::ScaleRotationTranslation)
 
void set_translation_y (const double &y)
 
void set_translation (const double &x, const double &y, const double &z)
 
void set_translation (const glm::vec3 &new_position)
 
void add_translation (const double &x, const double &y, const double &z)
 
void add_translation (const glm::vec3 &add_position)
 
void set_rotation (const glm::vec3 &pitch_yaw_roll)
 
void set_rotation_pitch (const double &new_pitch)
 
void set_rotation_yaw (const double &new_yaw)
 
void reset_yaw ()
 
void reset_pitch ()
 
void set_rotation_roll (const double &new_roll)
 
void add_rotation_pitch (const double &pitch)
 
void add_rotation_yaw (const double &yaw)
 
void add_rotation_roll (const double &roll)
 
void set_scale (const double &scale)
 
void set_scale (const double &x, const double &y, const double &z)
 
void set_scale (const glm::vec3 &new_scale)
 
void set_scale_x (const double &new_scale)
 
void set_scale_y (const double &new_scale)
 
void set_scale_z (const double &new_scale)
 
void reset ()
 
void reset_scale ()
 
Transform get_inverse_transform () const
 
glm::mat4 get_transform_matrix ()
 
glm::vec3 get_rotation () const
 
double get_rotation_pitch () const
 
double get_rotation_yaw () const
 
glm::mat4 get_rotation_transform_matrix () const
 
glm::vec3 get_scale () const
 
glm::mat4 get_scale_transform_matrix () const
 
glm::vec3 get_translation () const
 
glm::mat4 get_translation_transform_matrix () const
 
void set_transform_matrix (const glm::mat4 &matrix)
 
glm::vec3 compute_forward_vector () const
 
glm::vec3 compute_xz_forward_vector () const
 
glm::vec2 compute_xz_forward_vector_R2 () const
 
glm::vec3 compute_right_vector () const
 
glm::vec3 compute_up_vector () const
 
std::string to_string () const
 

Public Attributes

TransformApplicationOrder transform_application_order
 

Friends

std::ostream & operator<< (std::ostream &os, const Transform &transform)
 

Constructor & Destructor Documentation

◆ Transform()

Transform::Transform ( glm::vec3 translation = glm::vec3(0),
glm::vec3 rotation = glm::vec3(0),
glm::vec3 scale = glm::vec3(1),
const TransformApplicationOrder & transform_application_order = TransformApplicationOrder::ScaleRotationTranslation )
inline

Member Function Documentation

◆ add_rotation_pitch()

void Transform::add_rotation_pitch ( const double & pitch)

◆ add_rotation_roll()

void Transform::add_rotation_roll ( const double & roll)

◆ add_rotation_yaw()

void Transform::add_rotation_yaw ( const double & yaw)

◆ add_translation() [1/2]

void Transform::add_translation ( const double & x,
const double & y,
const double & z )

◆ add_translation() [2/2]

void Transform::add_translation ( const glm::vec3 & add_position)

◆ compute_forward_vector()

glm::vec3 Transform::compute_forward_vector ( ) const

◆ compute_right_vector()

glm::vec3 Transform::compute_right_vector ( ) const

◆ compute_up_vector()

glm::vec3 Transform::compute_up_vector ( ) const

◆ compute_xz_forward_vector()

glm::vec3 Transform::compute_xz_forward_vector ( ) const

◆ compute_xz_forward_vector_R2()

glm::vec2 Transform::compute_xz_forward_vector_R2 ( ) const

◆ get_inverse_transform()

Transform Transform::get_inverse_transform ( ) const

◆ get_rotation()

glm::vec3 Transform::get_rotation ( ) const
inline

◆ get_rotation_pitch()

double Transform::get_rotation_pitch ( ) const
inline

◆ get_rotation_transform_matrix()

glm::mat4 Transform::get_rotation_transform_matrix ( ) const

◆ get_rotation_yaw()

double Transform::get_rotation_yaw ( ) const
inline

◆ get_scale()

glm::vec3 Transform::get_scale ( ) const
inline

◆ get_scale_transform_matrix()

glm::mat4 Transform::get_scale_transform_matrix ( ) const

◆ get_transform_matrix()

glm::mat4 Transform::get_transform_matrix ( )

◆ get_translation()

glm::vec3 Transform::get_translation ( ) const
inline

◆ get_translation_transform_matrix()

glm::mat4 Transform::get_translation_transform_matrix ( ) const

◆ reset()

void Transform::reset ( )

◆ reset_pitch()

void Transform::reset_pitch ( )

◆ reset_scale()

void Transform::reset_scale ( )

◆ reset_yaw()

void Transform::reset_yaw ( )

◆ set_rotation()

void Transform::set_rotation ( const glm::vec3 & pitch_yaw_roll)

◆ set_rotation_pitch()

void Transform::set_rotation_pitch ( const double & new_pitch)

◆ set_rotation_roll()

void Transform::set_rotation_roll ( const double & new_roll)

◆ set_rotation_yaw()

void Transform::set_rotation_yaw ( const double & new_yaw)

◆ set_scale() [1/3]

void Transform::set_scale ( const double & scale)

◆ set_scale() [2/3]

void Transform::set_scale ( const double & x,
const double & y,
const double & z )

◆ set_scale() [3/3]

void Transform::set_scale ( const glm::vec3 & new_scale)

◆ set_scale_x()

void Transform::set_scale_x ( const double & new_scale)

◆ set_scale_y()

void Transform::set_scale_y ( const double & new_scale)

◆ set_scale_z()

void Transform::set_scale_z ( const double & new_scale)

◆ set_transform_matrix()

void Transform::set_transform_matrix ( const glm::mat4 & matrix)

◆ set_translation() [1/2]

void Transform::set_translation ( const double & x,
const double & y,
const double & z )

◆ set_translation() [2/2]

void Transform::set_translation ( const glm::vec3 & new_position)

◆ set_translation_y()

void Transform::set_translation_y ( const double & y)

◆ to_string()

std::string Transform::to_string ( ) const

Friends And Related Symbol Documentation

◆ operator<<

std::ostream & operator<< ( std::ostream & os,
const Transform & transform )
friend

Member Data Documentation

◆ transform_application_order

TransformApplicationOrder Transform::transform_application_order

The documentation for this class was generated from the following files: