LightsprintSDK 2021.08.08
rr::RRVec3p Struct Reference

#include <RRMath.h>

Inheritance diagram for rr::RRVec3p:
rr::RRVec3 rr::RRVec2 rr::RRVec4

Public Member Functions

 RRVec3p ()
 
 RRVec3p (RRReal a)
 
 RRVec3p (const RRVec3 &a, RRReal aw)
 
 RRVec3p (RRReal ax, RRReal ay, RRReal az, RRReal aw)
 
const RRVec3operator= (const RRVec3 a)
 
- Public Member Functions inherited from rr::RRVec3
 RRVec3 ()
 
 RRVec3 (RRReal a)
 
 RRVec3 (RRReal ax, RRReal ay, RRReal az)
 
RRVec3 operator+ (const RRVec3 &a) const
 
RRVec3 operator- (const RRVec3 &a) const
 
RRVec3 operator- () const
 
RRVec3 operator* (RRReal f) const
 
RRVec3 operator* (const RRVec3 &a) const
 
RRVec3 operator/ (RRReal f) const
 
RRVec3 operator/ (const RRVec3 &a) const
 
RRVec3 operator/ (int f) const
 
RRVec3 operator/ (unsigned f) const
 
RRVec3 operator+= (const RRVec3 &a)
 
RRVec3 operator-= (const RRVec3 &a)
 
RRVec3 operator*= (RRReal f)
 
RRVec3 operator*= (const RRVec3 &a)
 
RRVec3 operator/= (RRReal f)
 
RRVec3 operator/= (const RRVec3 &a)
 
bool operator== (const RRVec3 &a) const
 
bool operator!= (const RRVec3 &a) const
 
unsigned components () const
 
RRReal sum () const
 
RRReal avg () const
 
RRVec3 abs () const
 
RRVec3 neg () const
 
RRReal mini () const
 
RRReal maxi () const
 
RRReal length () const
 
RRReal length2 () const
 
void normalize ()
 
void normalizeSafe ()
 
RRVec3 normalized () const
 
RRVec3 normalizedSafe () const
 
bool finite () const
 
RRReal dot (const RRVec3 &a) const
 
RRVec3 cross (const RRVec3 &a) const
 
RR_API RRVec3 getHsvFromRgb () const
 
RR_API RRVec3 getRgbFromHsv () const
 
- Public Member Functions inherited from rr::RRVec2
RRRealoperator[] (int i) const
 
 RRVec2 ()
 
 RRVec2 (RRReal a)
 
 RRVec2 (RRReal ax, RRReal ay)
 
RRVec2 operator+ (const RRVec2 &a) const
 
RRVec2 operator- (const RRVec2 &a) const
 
RRVec2 operator- () const
 
RRVec2 operator* (RRReal f) const
 
RRVec2 operator* (const RRVec2 &a) const
 
RRVec2 operator/ (RRReal f) const
 
RRVec2 operator/ (const RRVec2 &a) const
 
RRVec2 operator+= (const RRVec2 &a)
 
RRVec2 operator-= (const RRVec2 &a)
 
RRVec2 operator*= (RRReal f)
 
RRVec2 operator*= (const RRVec2 &a)
 
RRVec2 operator/= (RRReal f)
 
RRVec2 operator/= (const RRVec2 &a)
 
bool operator== (const RRVec2 &a) const
 
bool operator!= (const RRVec2 &a) const
 
unsigned components () const
 
RRReal sum () const
 
RRReal avg () const
 
RRVec2 abs () const
 
RRVec2 neg () const
 
RRReal mini () const
 
RRReal maxi () const
 
RRReal length () const
 
RRReal length2 () const
 
void normalize ()
 
void normalizeSafe ()
 
RRVec2 normalized () const
 
RRVec2 normalizedSafe () const
 
bool finite () const
 
RRReal dot (const RRVec2 &a) const
 

Public Attributes

RRReal w
 
- Public Attributes inherited from rr::RRVec3
RRReal z
 
- Public Attributes inherited from rr::RRVec2
RRReal x
 
RRReal y
 

Detailed Description

Vector of 3 real numbers plus 4th number as a padding. Operators use only 3 components.

Constructor & Destructor Documentation

◆ RRVec3p() [1/4]

rr::RRVec3p::RRVec3p ( )
inline

◆ RRVec3p() [2/4]

rr::RRVec3p::RRVec3p ( RRReal  a)
inlineexplicit

◆ RRVec3p() [3/4]

rr::RRVec3p::RRVec3p ( const RRVec3 a,
RRReal  aw 
)
inline

◆ RRVec3p() [4/4]

rr::RRVec3p::RRVec3p ( RRReal  ax,
RRReal  ay,
RRReal  az,
RRReal  aw 
)
inline

Member Function Documentation

◆ operator=()

const RRVec3 & rr::RRVec3p::operator= ( const RRVec3  a)
inline

Member Data Documentation

◆ w

RRReal rr::RRVec3p::w