Inheritance diagram for NL3D::CShadowPolyReceiver::CVectorId:
Public Member Functions | |
std::string | asString () const |
CVectorId (const CVector &v) | |
CVectorId () | |
std::string | toString () const |
Returns the contents as a printable string "x y z". | |
Misc. | |
void | cartesianToSpheric (float &r, float &theta, float &phi) const |
bool | isNull () const |
void | maxof (const CVector &a, const CVector &b) |
Set all vector x/y/z as maximum of a/b x/y/z (respectively). | |
void | minof (const CVector &a, const CVector &b) |
Set all vector x/y/z as minimum of a/b x/y/z (respectively). | |
bool | operator!= (const CVector &v) const |
bool | operator< (const CVector &v) const |
This operator is here just for map/set insertion (no meaning). comparison order is x,y,z. | |
bool | operator== (const CVector &v) const |
void | serial (IStream &f) |
serial. | |
void | set (float _x, float _y, float _z) |
void | sphericToCartesian (float r, float theta, float phi) |
Advanced Maths. | |
float | norm () const |
Return the norm of the vector. | |
void | normalize () |
Normalize the vector. | |
CVector | normed () const |
Return the vector normalized. | |
float | operator * (const CVector &v) const |
Dot product. | |
CVector | operator^ (const CVector &v) const |
float | sqrnorm () const |
Return the square of the norm of the vector. | |
Base Maths. | |
CVector | operator * (float f) const |
CVector & | operator *= (float f) |
CVector | operator+ (const CVector &v) const |
CVector & | operator+= (const CVector &v) |
CVector | operator- () const |
CVector | operator- (const CVector &v) const |
CVector & | operator-= (const CVector &v) |
CVector | operator/ (float f) const |
CVector & | operator/= (float f) |
Misc. | |
void | cartesianToSpheric (float &r, float &theta, float &phi) const |
bool | isNull () const |
void | maxof (const CVector &a, const CVector &b) |
Set all vector x/y/z as maximum of a/b x/y/z (respectively). | |
void | minof (const CVector &a, const CVector &b) |
Set all vector x/y/z as minimum of a/b x/y/z (respectively). | |
bool | operator!= (const CVector &v) const |
bool | operator< (const CVector &v) const |
This operator is here just for map/set insertion (no meaning). comparison order is x,y,z. | |
bool | operator== (const CVector &v) const |
void | serial (IStream &f) |
serial. | |
void | set (float _x, float _y, float _z) |
void | sphericToCartesian (float r, float theta, float phi) |
Advanced Maths. | |
float | norm () const |
Return the norm of the vector. | |
void | normalize () |
Normalize the vector. | |
CVector | normed () const |
Return the vector normalized. | |
float | operator * (const CVector &v) const |
Dot product. | |
CVector | operator^ (const CVector &v) const |
float | sqrnorm () const |
Return the square of the norm of the vector. | |
Base Maths. | |
CVector | operator * (float f) const |
CVector & | operator *= (float f) |
CVector | operator+ (const CVector &v) const |
CVector & | operator+= (const CVector &v) |
CVector | operator- () const |
CVector | operator- (const CVector &v) const |
CVector & | operator-= (const CVector &v) |
CVector | operator/ (float f) const |
CVector & | operator/= (float f) |
Misc. | |
void | cartesianToSpheric (float &r, float &theta, float &phi) const |
bool | isNull () const |
void | maxof (const CVector &a, const CVector &b) |
Set all vector x/y/z as maximum of a/b x/y/z (respectively). | |
void | minof (const CVector &a, const CVector &b) |
Set all vector x/y/z as minimum of a/b x/y/z (respectively). | |
bool | operator!= (const CVector &v) const |
bool | operator< (const CVector &v) const |
This operator is here just for map/set insertion (no meaning). comparison order is x,y,z. | |
bool | operator== (const CVector &v) const |
void | serial (IStream &f) |
serial. | |
void | set (float _x, float _y, float _z) |
void | sphericToCartesian (float r, float theta, float phi) |
Advanced Maths. | |
float | norm () const |
Return the norm of the vector. | |
void | normalize () |
Normalize the vector. | |
CVector | normed () const |
Return the vector normalized. | |
float | operator * (const CVector &v) const |
Dot product. | |
CVector | operator^ (const CVector &v) const |
float | sqrnorm () const |
Return the square of the norm of the vector. | |
Base Maths. | |
CVector | operator * (float f) const |
CVector & | operator *= (float f) |
CVector | operator+ (const CVector &v) const |
CVector & | operator+= (const CVector &v) |
CVector | operator- () const |
CVector | operator- (const CVector &v) const |
CVector & | operator-= (const CVector &v) |
CVector | operator/ (float f) const |
CVector & | operator/= (float f) |
Data Fields | |
uint8 | Flags |
uint8 | RefCount |
sint16 | VBIdx |
float | x |
float | y |
float | z |
Static Public Attributes | |
const CVector | I |
I vector (1,0,0). | |
const CVector | J |
J vector (0,1,0). | |
const CVector | K |
K vector (0,0,1). | |
const CVector | Null |
Null vector (0,0,0). | |
Friends | |
CVector | operator * (float f, const CVector &v0) |
|
Definition at line 92 of file shadow_poly_receiver.h.
00092 {RefCount=0;} |
|
Definition at line 93 of file shadow_poly_receiver.h. References v.
|
|
Returns the contents as a printable string "x y z" undeprecated, use the generic function toString() Definition at line 139 of file vector.h. References NLMISC::CVector::toString().
00139 { return toString(); } |
|
Get the sphreic coordinates of the vector. See sphericToCartesian() to know coordinates conventions.
Definition at line 161 of file vector_inline.h. References NLMISC::clamp(), NLMISC::CVector::norm(), NLMISC::CVector::normed(), r, and v.
|
|
Get the sphreic coordinates of the vector. See sphericToCartesian() to know coordinates conventions.
Definition at line 148 of file vector_inline.h. Referenced by NLMISC::CMatrix::normalize(), NLSOUND::CSimpleSource::setDirection(), NLPACS::CGlobalRetriever::testBBoxMove(), and NLPACS::CGlobalRetriever::testCylinderMove().
00149 { 00150 return *this==CVector::Null; 00151 } |
|
Set all vector x/y/z as maximum of a/b x/y/z (respectively).
Definition at line 192 of file vector_inline.h. References NLMISC::CVector::x, x, NLMISC::CVector::y, y, NLMISC::CVector::z, and z. Referenced by NL3D::CLodCharacterShape::addAnim(), NL3D::CMeshMRMSkinnedGeom::CPackedVertexBuffer::build(), NLPACS::CEdgeQuad::build(), NLPACS::CChainQuad::build(), NL3D::CPatch::buildBBoxFromBezierPatch(), NLMISC::CAABBox::computeAABBoxUnion(), NL3D::CPSLocated::computeBBox(), NLMISC::CAABBox::computeIntersection(), NL3D::CSkeletonModel::computeWorldBBoxForShadow(), NLMISC::CAABBox::extend(), and NL3D::CZoneLighter::light().
|
|
Set all vector x/y/z as minimum of a/b x/y/z (respectively).
Definition at line 186 of file vector_inline.h. References min, NLMISC::CVector::x, x, NLMISC::CVector::y, y, NLMISC::CVector::z, and z. Referenced by NL3D::CMeshMRMSkinnedGeom::CPackedVertexBuffer::build(), NLPACS::CEdgeQuad::build(), NLPACS::CChainQuad::build(), NL3D::CPatch::buildBBoxFromBezierPatch(), NLMISC::CAABBox::computeIntersection(), NL3D::CSkeletonModel::computeWorldBBoxForShadow(), NLMISC::CAABBox::extend(), NL3D::CZoneLighter::light(), NLPACS::CQuadGrid< uint32 >::selectQuads(), and NL3D::CQuadGrid< CWaterShape * >::selectQuads().
|
|
|
|
Return the vector normalized.
Definition at line 125 of file vector_inline.h. References NLMISC::CVector::normalize(). Referenced by NL3D::CCameraCol::build(), NL3D::BuildCubeMapTex(), NL3D::BuildCubeMapTexLuminance(), NL3D::CShadowMap::buildProjectionInfos(), NLMISC::CVector::cartesianToSpheric(), NL3D::CPSFaceLookAtHelper::computeOrientationVectors(), NL3D::CVegetableManager::CVegetableManager(), NL3D::CBezierPatch::evalTangentS(), NL3D::CBezierPatch::evalTangentT(), NL3D::CTargetAnimCtrl::execute(), NLMISC::CQuatT< float >::getAxis(), NLSOUND::CClusteredSound::interpolateSourceDirection(), NLMISC::CPlane::make(), NL3D::CVegetableManager::render(), and NLSOUND::CClusteredSound::soundTraverse().
00126 { 00127 CVector ret; 00128 ret= *this; 00129 ret.normalize(); 00130 return ret; 00131 } |
|
Dot product.
Definition at line 97 of file vector_inline.h.
|
|
Definition at line 75 of file vector_inline.h.
|
|
Definition at line 54 of file vector_inline.h.
|
|
Get the sphreic coordinates of the vector. See sphericToCartesian() to know coordinates conventions.
Definition at line 144 of file vector_inline.h. References v.
00145 { 00146 return !(*this==v); 00147 } |
|
Definition at line 65 of file vector_inline.h.
|
|
Definition at line 40 of file vector_inline.h.
|
|
Definition at line 84 of file vector_inline.h. References NLMISC::CVector::CVector(), x, y, and z.
|
|
Definition at line 70 of file vector_inline.h.
|
|
Definition at line 47 of file vector_inline.h.
|
|
Definition at line 80 of file vector_inline.h.
00081 { 00082 return *this*(1.0f/f); 00083 } |
|
Definition at line 61 of file vector_inline.h.
00062 { 00063 return *this*= (1.0f/f); 00064 } |
|
This operator is here just for map/set insertion (no meaning). comparison order is x,y,z.
Definition at line 152 of file vector_inline.h.
|
|
Get the sphreic coordinates of the vector. See sphericToCartesian() to know coordinates conventions.
Definition at line 140 of file vector_inline.h.
|
|
Cross product. compute the cross product *this ^ v. Definition at line 101 of file vector_inline.h. References v, x, NLMISC::CVector::x, NLMISC::CVector::y, y, NLMISC::CVector::z, and z.
|
|
serial.
Definition at line 198 of file vector_inline.h. References NLMISC::IStream::serial(), x, y, and z.
|
|
|
Setup the vector with spheric coordinates. sphericToCartesian(1,0,0) build the I vector ((1,0,0)). the formula is:
Definition at line 175 of file vector_inline.h.
|
|
Return the square of the norm of the vector.
Definition at line 111 of file vector_inline.h. Referenced by NLMISC::CBSphere::applyTransform(), NL3D::CTessFace::computeSplitPoint(), NLSOUND::CClusteredSound::getPolyNearestPos(), NLMISC::CBSphere::include(), NL3D::CCameraCol::minimizeDistanceAgainstTri(), NLMISC::CLine::project(), NL3D::CTessFace::updateErrorMetric(), NL3D::CTessFace::updateRefineSplit(), and NLSOUND::CSourceDSound::updateVolume().
|
|
Returns the contents as a printable string "x y z".
Definition at line 45 of file vector.cpp. References NLMISC::toString(), x, y, and z. Referenced by NLMISC::CVector::asString().
00046 { 00047 string str; 00048 str = NLMISC::toString(x) + " " + NLMISC::toString(y) + " " + NLMISC::toString(z); 00049 return str; 00050 } |
|
Definition at line 88 of file vector_inline.h.
|
|
Definition at line 89 of file shadow_poly_receiver.h. |
|
I vector (1,0,0).
|
|
J vector (0,1,0).
|
|
K vector (0,0,1).
|
|
Null vector (0,0,0).
|
|
Definition at line 88 of file shadow_poly_receiver.h. |
|
Definition at line 90 of file shadow_poly_receiver.h. |
|
|
|