#include <surface_quad.h>
Inheritance diagram for NLPACS::IQuadNode:
Public Member Functions | |
virtual void | addVertex (const NLMISC::CVector &v) |
virtual bool | check () const |
virtual NLMISC::CAABBox | getBBox () const |
virtual const IQuadNode * | getChild (uint child) const=0 |
virtual uint8 | getLevel () const |
virtual float | getMaxHeight () const |
virtual float | getMinHeight () const |
virtual bool | isLeaf () const=0 |
virtual void | serial (NLMISC::IStream &f) |
virtual void | translate (const NLMISC::CVector &translation) |
virtual | ~IQuadNode () |
Protected Member Functions | |
IQuadNode (uint8 level=0) | |
Protected Attributes | |
float | _HalfSize |
uint8 | _Level |
float | _MaxHeight |
float | _MaxThickness |
float | _MinHeight |
float | _XCenter |
float | _YCenter |
Friends | |
class | CQuadBranch |
class | CQuadLeaf |
class | CSurfaceQuadTree |
|
Definition at line 49 of file surface_quad.h.
00049 : _Level(level) {} |
|
Definition at line 51 of file surface_quad.h.
00051 {} |
|
Reimplemented in NLPACS::CQuadBranch. Definition at line 57 of file surface_quad.h. References _MaxHeight, _MinHeight, and v. Referenced by NLPACS::CQuadBranch::addVertex(), and NLPACS::CSurfaceQuadTree::addVertex().
00058 { 00059 if (v.z < _MinHeight) _MinHeight = v.z; 00060 if (v.z > _MaxHeight) _MaxHeight = v.z; 00061 } |
|
Reimplemented in NLPACS::CQuadLeaf, and NLPACS::CQuadBranch. Definition at line 78 of file surface_quad.h. References _MaxHeight, and _MinHeight. Referenced by NLPACS::CSurfaceQuadTree::check(), and NLPACS::CQuadBranch::check().
00078 { return (_MaxHeight >= _MinHeight); } |
|
Definition at line 62 of file surface_quad.h. References _HalfSize, _XCenter, _YCenter, NLMISC::CAABBox::setCenter(), and NLMISC::CAABBox::setHalfSize(). Referenced by NLPACS::CSurfaceQuadTree::getInterpZ(), and NLPACS::CSurfaceQuadTree::getLeaf().
00063 { 00064 NLMISC::CAABBox bbox; 00065 bbox.setCenter(NLMISC::CVector(_XCenter, _YCenter, 0.0f)); 00066 bbox.setHalfSize(NLMISC::CVector(_HalfSize, _HalfSize, 10000.0f)); 00067 return bbox; 00068 } |
|
Implemented in NLPACS::CQuadLeaf, and NLPACS::CQuadBranch. Referenced by NLPACS::CSurfaceQuadTree::getInterpZ(), and NLPACS::CSurfaceQuadTree::getLeaf(). |
|
Definition at line 55 of file surface_quad.h. References uint8.
00055 { return _Level; } |
|
Definition at line 54 of file surface_quad.h. References _MaxHeight. Referenced by NLPACS::CSurfaceQuadTree::compile(), NLPACS::CLocalRetriever::getHeight(), and NLPACS::CQuadBranch::reduceChildren().
00054 { return _MaxHeight; } |
|
Definition at line 53 of file surface_quad.h. References _MinHeight. Referenced by NLPACS::CSurfaceQuadTree::compile(), NLPACS::CLocalRetriever::getHeight(), and NLPACS::CQuadBranch::reduceChildren().
00053 { return _MinHeight; } |
|
|
Reimplemented in NLPACS::CQuadLeaf, and NLPACS::CQuadBranch. Definition at line 80 of file surface_quad.h. References _HalfSize, _MaxHeight, _MaxThickness, _MinHeight, _XCenter, _YCenter, and NLMISC::IStream::serial(). Referenced by NLPACS::CSurfaceQuadTree::serial().
|
|
Reimplemented in NLPACS::CQuadBranch. Definition at line 70 of file surface_quad.h. References _MaxHeight, _MinHeight, _XCenter, _YCenter, NLMISC::CVector::x, NLMISC::CVector::y, and NLMISC::CVector::z. Referenced by NLPACS::CSurfaceQuadTree::translate(), and NLPACS::CQuadBranch::translate().
00071 { 00072 _XCenter += translation.x; 00073 _YCenter += translation.y; 00074 _MinHeight += translation.z; 00075 _MaxHeight += translation.z; 00076 } |
|
Definition at line 43 of file surface_quad.h. |
|
Definition at line 42 of file surface_quad.h. Referenced by NLPACS::CQuadBranch::addVertex(), NLPACS::CQuadBranch::operator=(), NLPACS::CQuadBranch::reduceChildren(), and NLPACS::CQuadBranch::serial(). |
|
Reimplemented in NLPACS::CQuadBranch. Definition at line 41 of file surface_quad.h. |
|
Definition at line 48 of file surface_quad.h. Referenced by NLPACS::CQuadBranch::addVertex(), NLPACS::CSurfaceQuadTree::addVertex(), getBBox(), and serial(). |
|
Definition at line 47 of file surface_quad.h. |
|
Definition at line 44 of file surface_quad.h. Referenced by addVertex(), NLPACS::CQuadBranch::addVertex(), NLPACS::CSurfaceQuadTree::addVertex(), check(), getMaxHeight(), serial(), and translate(). |
|
Definition at line 46 of file surface_quad.h. Referenced by NLPACS::CQuadBranch::addVertex(), NLPACS::CSurfaceQuadTree::addVertex(), and serial(). |
|
Definition at line 44 of file surface_quad.h. Referenced by addVertex(), NLPACS::CQuadBranch::addVertex(), NLPACS::CSurfaceQuadTree::addVertex(), check(), getMinHeight(), serial(), and translate(). |
|
Definition at line 48 of file surface_quad.h. Referenced by NLPACS::CQuadBranch::addVertex(), NLPACS::CSurfaceQuadTree::addVertex(), getBBox(), NLPACS::CSurfaceQuadTree::getInterpZ(), NLPACS::CSurfaceQuadTree::getLeaf(), serial(), and translate(). |
|
Definition at line 48 of file surface_quad.h. Referenced by NLPACS::CQuadBranch::addVertex(), NLPACS::CSurfaceQuadTree::addVertex(), getBBox(), NLPACS::CSurfaceQuadTree::getInterpZ(), NLPACS::CSurfaceQuadTree::getLeaf(), serial(), and translate(). |