CPP-TOOLBOX
Loading...
Searching...
No Matches
transform.hpp File Reference
#include <glm/glm.hpp>
#include <glm/gtc/matrix_transform.hpp>
#include <glm/gtc/type_ptr.hpp>
#include <iostream>
#include "sbpt_generated_includes.hpp"

Go to the source code of this file.

Classes

class  Transform
 

Enumerations

enum  TransformApplicationOrder { ScaleTranslationRotation , ScaleRotationTranslation }
 

Functions

glm::mat4 create_billboard_transform (const Transform &transform)
 
glm::mat4 create_translation_and_look_transform (const glm::vec3 &position, const glm::vec3 &look_vector, const glm::vec3 &up_hint=glm::vec3(0.0f, 1.0f, 0.0f))
 
glm::mat4 change_of_basis_move_y_to_look_dir (const glm::vec3 &position, const glm::vec3 &look_vector, const glm::vec3 &up_hint=glm::vec3(0.0f, 1.0f, 0.0f))
 
glm::mat4 create_billboard_transform (const glm::vec3 &right, const glm::vec3 &up, const glm::vec3 &look)
 
glm::mat4 create_billboard_transform (const glm::vec3 &look)
 
glm::mat4 create_billboard_transform_with_lock_axis (const glm::vec3 &lock_axis, const glm::vec3 &look)
 
bool angle_between_vectors_is_within (glm::vec3 v, glm::vec3 w, double turns)
 
bool vector_is_within_centered_sector (glm::vec3 center, glm::vec3 other, double sector_angle_turns)
 

Enumeration Type Documentation

◆ TransformApplicationOrder

Enumerator
ScaleTranslationRotation 
ScaleRotationTranslation 

Function Documentation

◆ angle_between_vectors_is_within()

bool angle_between_vectors_is_within ( glm::vec3 v,
glm::vec3 w,
double turns )

◆ change_of_basis_move_y_to_look_dir()

glm::mat4 change_of_basis_move_y_to_look_dir ( const glm::vec3 & position,
const glm::vec3 & look_vector,
const glm::vec3 & up_hint = glm::vec3(0.0f, 1.0f, 0.0f) )

◆ create_billboard_transform() [1/3]

glm::mat4 create_billboard_transform ( const glm::vec3 & look)

◆ create_billboard_transform() [2/3]

glm::mat4 create_billboard_transform ( const glm::vec3 & right,
const glm::vec3 & up,
const glm::vec3 & look )

◆ create_billboard_transform() [3/3]

glm::mat4 create_billboard_transform ( const Transform & transform)

◆ create_billboard_transform_with_lock_axis()

glm::mat4 create_billboard_transform_with_lock_axis ( const glm::vec3 & lock_axis,
const glm::vec3 & look )

◆ create_translation_and_look_transform()

glm::mat4 create_translation_and_look_transform ( const glm::vec3 & position,
const glm::vec3 & look_vector,
const glm::vec3 & up_hint = glm::vec3(0.0f, 1.0f, 0.0f) )

◆ vector_is_within_centered_sector()

bool vector_is_within_centered_sector ( glm::vec3 center,
glm::vec3 other,
double sector_angle_turns )