common::BOX Struct Reference
[Math ModuleAABB]

AABB z 2 punktów 3D. More...

#include <Math.hpp>

List of all members.

Public Member Functions

 BOX ()
 BOX (const VEC3 &Min, const VEC3 &Max)
 BOX (float p1x, float p1y, float p1z, float p2x, float p2y, float p2z)
 BOX (const float *Arr)
 operator float * ()
 operator const float * () const
bool operator== (const BOX &p) const
bool operator!= (const BOX &p) const
BOX operator+ () const
BOX operator- () const
BOX operator+ (const VEC3 &v) const
BOX operator- (const VEC3 &v) const
BOX operator* (float f) const
BOX operator/ (float f) const
BOXoperator+= (const VEC3 &v)
BOXoperator-= (const VEC3 &v)
BOXoperator*= (float f)
BOXoperator/= (float f)
bool IsValid ()
void Repair ()
void Extend (float d)
 Powiększa boks z każdej strony o podaną wartość.
void GetSize (VEC3 *Out) const
 Oblicza i zwraca rozmiary boksa w trzech wymiarach.
float GetSizeDim (uint dim) const
void SetSize (const VEC3 &NewSize)
 Zmienia wielkość na podaną.
void SetSizeDim (uint dim, float newSize)
float Diagonal () const
 Oblicza i zwraca długość przekątnej.
float Volume () const
 Oblicza i zwraca objętość.
void GetCenter (VEC3 *Out) const
 Oblicza i zwraca pozycję środka.
float GetCenterDim (uint dim) const
void GetHalfSize (VEC3 *OutHalfSize) const
 Oblicza i zwraca połowy rozmiarów.
float GetHalfSizeDim (uint dim)
void GetCorner (VEC3 *Out, uint i) const
 Zwraca wybrany wierzchołek.
void GetAllCorners (VEC3 *Out) const
 Zwraca wszystkie 6 wierzchołków w kolejności.
void GetEdge (VEC3 *outP1, VEC3 *outP2, uint index) const
 Returns begin point and end point of selected edge. index must be 0..11.
void GetOct (BOX *out, uint index) const
 Returns one of 8 possible octants of this box.
void AddInternalPoint (const VEC3 &p)
 Powiększa tak żeby na pewno zawierał podany punkt.
void AddInternalBox (const BOX &b)
 Powiększa tak żeby na pewno zawierał podany boks.

Public Attributes

VEC3 Min
VEC3 Max

Detailed Description

AABB z 2 punktów 3D.

Składnia do konwersji na i z łańcuch: p1x,p1y,p1z;p2x,p2y,p2z, np.: "1,2,3;4,5,6"


Constructor & Destructor Documentation

common::BOX::BOX (  )  [inline]
common::BOX::BOX ( const VEC3 Min,
const VEC3 Max 
) [inline]
common::BOX::BOX ( float  p1x,
float  p1y,
float  p1z,
float  p2x,
float  p2y,
float  p2z 
) [inline]
common::BOX::BOX ( const float *  Arr  )  [inline]

Member Function Documentation

void common::BOX::AddInternalBox ( const BOX b  )  [inline]

Powiększa tak żeby na pewno zawierał podany boks.

Podany boks musi być prawidłowy.

void common::BOX::AddInternalPoint ( const VEC3 p  )  [inline]

Powiększa tak żeby na pewno zawierał podany punkt.

float common::BOX::Diagonal (  )  const [inline]

Oblicza i zwraca długość przekątnej.

void common::BOX::Extend ( float  d  )  [inline]

Powiększa boks z każdej strony o podaną wartość.

void common::BOX::GetAllCorners ( VEC3 Out  )  const [inline]

Zwraca wszystkie 6 wierzchołków w kolejności.

Trzeba podać wskaźnik do tablicy. Kolejność:

	p1x, p1y, p1z; p2x, p1y, p1z; p1x, p2y, p1z; p2x, p2y, p1z
	p1x, p1y, p2z; p2x, p1y, p2z; p1x, p2y, p2z; p2x, p2y, p2z
	
void common::BOX::GetCenter ( VEC3 Out  )  const [inline]

Oblicza i zwraca pozycję środka.

float common::BOX::GetCenterDim ( uint  dim  )  const [inline]
void common::BOX::GetCorner ( VEC3 Out,
uint  i 
) const [inline]

Zwraca wybrany wierzchołek.

void common::BOX::GetEdge ( VEC3 outP1,
VEC3 outP2,
uint  index 
) const

Returns begin point and end point of selected edge. index must be 0..11.

void common::BOX::GetHalfSize ( VEC3 OutHalfSize  )  const [inline]

Oblicza i zwraca połowy rozmiarów.

float common::BOX::GetHalfSizeDim ( uint  dim  )  [inline]
void common::BOX::GetOct ( BOX out,
uint  index 
) const

Returns one of 8 possible octants of this box.

void common::BOX::GetSize ( VEC3 Out  )  const [inline]

Oblicza i zwraca rozmiary boksa w trzech wymiarach.

float common::BOX::GetSizeDim ( uint  dim  )  const [inline]
bool common::BOX::IsValid (  )  [inline]
common::BOX::operator const float * (  )  const [inline]
common::BOX::operator float * (  )  [inline]
bool common::BOX::operator!= ( const BOX p  )  const [inline]
BOX common::BOX::operator* ( float  f  )  const [inline]
BOX& common::BOX::operator*= ( float  f  )  [inline]
BOX common::BOX::operator+ ( const VEC3 v  )  const [inline]
BOX common::BOX::operator+ (  )  const [inline]
BOX& common::BOX::operator+= ( const VEC3 v  )  [inline]
BOX common::BOX::operator- ( const VEC3 v  )  const [inline]
BOX common::BOX::operator- (  )  const [inline]
BOX& common::BOX::operator-= ( const VEC3 v  )  [inline]
BOX common::BOX::operator/ ( float  f  )  const [inline]
BOX& common::BOX::operator/= ( float  f  )  [inline]
bool common::BOX::operator== ( const BOX p  )  const [inline]
void common::BOX::Repair (  )  [inline]
void common::BOX::SetSize ( const VEC3 NewSize  )  [inline]

Zmienia wielkość na podaną.

void common::BOX::SetSizeDim ( uint  dim,
float  newSize 
) [inline]
float common::BOX::Volume (  )  const [inline]

Oblicza i zwraca objętość.


Member Data Documentation


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

Generated on Wed Dec 16 20:44:55 2009 for CommonLib by  doxygen 1.6.1