CARLA
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
vec3f Struct Reference

#include <Simplify.h>

+ Collaboration diagram for vec3f:

Public Member Functions

double angle (const vec3f &v)
 
double angle2 (const vec3f &v, const vec3f &w)
 
void clamp (double min, double max)
 
vec3f cross (const vec3f &a, const vec3f &b)
 
double dot (const vec3f &a) const
 
vec3f frac ()
 
vec3f integer ()
 
vec3f invert ()
 
double length () const
 
vec3f normalize (double desired_length=1)
 
vec3f operator* (const double a) const
 
vec3f operator* (const vec3f a) const
 
vec3f operator+ (const vec3f &a) const
 
vec3f operator+= (const vec3f &a) const
 
vec3f operator- (const vec3f &a) const
 
vec3f operator/ (const vec3f a) const
 
vec3f operator/ (const double a) const
 
vec3f operator= (const vector3 a)
 
vec3f operator= (const vec3f a)
 
vec3f random01_fxyz ()
 
double random_double_01 (double a)
 
vec3f rot_x (double a)
 
vec3f rot_y (double a)
 
vec3f rot_z (double a)
 
vec3f v3 () const
 
 vec3f (void)
 
 vec3f (vector3 a)
 
 vec3f (const double X, const double Y, const double Z)
 

Static Public Member Functions

static vec3f normalize (vec3f a)
 
static vec3f random ()
 
static double random_double ()
 
static void random_init ()
 

Public Attributes

double x
 
double y
 
double z
 

Static Public Attributes

static int random_number
 

Detailed Description

Definition at line 36 of file Simplify.h.

Constructor & Destructor Documentation

◆ vec3f() [1/3]

vec3f::vec3f ( void  )
inline

Definition at line 40 of file Simplify.h.

◆ vec3f() [2/3]

vec3f::vec3f ( vector3  a)
inline

Definition at line 45 of file Simplify.h.

References vector3::x, vector3::y, and vector3::z.

◆ vec3f() [3/3]

vec3f::vec3f ( const double  X,
const double  Y,
const double  Z 
)
inline

Definition at line 52 of file Simplify.h.

Member Function Documentation

◆ angle()

double vec3f::angle ( const vec3f v)
inline

Definition at line 128 of file Simplify.h.

References length(), x, y, vector3::z, and z.

+ Here is the call graph for this function:

◆ angle2()

double vec3f::angle2 ( const vec3f v,
const vec3f w 
)
inline

Definition at line 143 of file Simplify.h.

References cross(), length(), x, y, and z.

+ Here is the call graph for this function:

◆ clamp()

void vec3f::clamp ( double  min,
double  max 
)
inline

Definition at line 176 of file Simplify.h.

References min().

+ Here is the call graph for this function:

◆ cross()

vec3f vec3f::cross ( const vec3f a,
const vec3f b 
)
inline

Definition at line 120 of file Simplify.h.

References x, y, and z.

Referenced by angle2(), Simplify::SimplificationObject::flipped(), and Simplify::SimplificationObject::update_mesh().

+ Here is the caller graph for this function:

◆ dot()

double vec3f::dot ( const vec3f a) const
inline

Definition at line 115 of file Simplify.h.

References x, y, vector3::z, and z.

Referenced by barycentric(), Simplify::SimplificationObject::flipped(), and Simplify::SimplificationObject::update_mesh().

+ Here is the caller graph for this function:

◆ frac()

vec3f vec3f::frac ( )
inline

Definition at line 206 of file Simplify.h.

◆ integer()

vec3f vec3f::integer ( )
inline

Definition at line 214 of file Simplify.h.

◆ invert()

vec3f vec3f::invert ( )
inline

Definition at line 199 of file Simplify.h.

References vector3::x, vector3::y, and vector3::z.

◆ length()

double vec3f::length ( ) const
inline

Definition at line 222 of file Simplify.h.

Referenced by angle(), and angle2().

+ Here is the caller graph for this function:

◆ normalize() [1/2]

vec3f vec3f::normalize ( double  desired_length = 1)
inline

Definition at line 227 of file Simplify.h.

Referenced by Simplify::SimplificationObject::flipped(), and Simplify::SimplificationObject::update_mesh().

+ Here is the caller graph for this function:

◆ normalize() [2/2]

static vec3f vec3f::normalize ( vec3f  a)
static

◆ operator*() [1/2]

vec3f vec3f::operator* ( const double  a) const
inline

Definition at line 69 of file Simplify.h.

◆ operator*() [2/2]

vec3f vec3f::operator* ( const vec3f  a) const
inline

Definition at line 74 of file Simplify.h.

References x, y, and z.

◆ operator+()

vec3f vec3f::operator+ ( const vec3f a) const
inline

Definition at line 59 of file Simplify.h.

References x, y, and z.

◆ operator+=()

vec3f vec3f::operator+= ( const vec3f a) const
inline

Definition at line 64 of file Simplify.h.

References x, y, and z.

◆ operator-()

vec3f vec3f::operator- ( const vec3f a) const
inline

Definition at line 105 of file Simplify.h.

References x, y, and z.

◆ operator/() [1/2]

vec3f vec3f::operator/ ( const vec3f  a) const
inline

Definition at line 100 of file Simplify.h.

References x, y, and z.

◆ operator/() [2/2]

vec3f vec3f::operator/ ( const double  a) const
inline

Definition at line 110 of file Simplify.h.

◆ operator=() [1/2]

vec3f vec3f::operator= ( const vector3  a)
inline

Definition at line 84 of file Simplify.h.

References vector3::x, vector3::y, and vector3::z.

◆ operator=() [2/2]

vec3f vec3f::operator= ( const vec3f  a)
inline

Definition at line 92 of file Simplify.h.

References x, y, and z.

◆ random()

static vec3f vec3f::random ( )
static

◆ random01_fxyz()

vec3f vec3f::random01_fxyz ( )
inline

Definition at line 258 of file Simplify.h.

◆ random_double()

static double vec3f::random_double ( )
static

◆ random_double_01()

double vec3f::random_double_01 ( double  a)
inline

Definition at line 251 of file Simplify.h.

◆ random_init()

static void vec3f::random_init ( )
static

◆ rot_x()

vec3f vec3f::rot_x ( double  a)
inline

Definition at line 160 of file Simplify.h.

References vector3::y, and vector3::z.

◆ rot_y()

vec3f vec3f::rot_y ( double  a)
inline

Definition at line 168 of file Simplify.h.

References vector3::x, and vector3::z.

◆ rot_z()

vec3f vec3f::rot_z ( double  a)
inline

Definition at line 191 of file Simplify.h.

References vector3::x, and vector3::y.

◆ v3()

vec3f vec3f::v3 ( ) const
inline

Definition at line 79 of file Simplify.h.

Member Data Documentation

◆ random_number

int vec3f::random_number
static

Definition at line 249 of file Simplify.h.

◆ x

double vec3f::x

◆ y

double vec3f::y

◆ z

double vec3f::z

The documentation for this struct was generated from the following file: