Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

QuadtreeNode Class Reference

#include <sps.H>

Collaboration diagram for QuadtreeNode:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 QuadtreeNode (Wpt p1, Wpt p2, Wpt p3)
 ~QuadtreeNode ()
Wpt centroid ()
double area ()
Wpt v1 ()
Wpt v2 ()
Wpt v3 ()
bool contains (CWpt &pt, double threshold)
void build_quadtree (OctreeNode *o, double regularity)
void set_leaf (bool leaf)
bool get_leaf ()
bool is_in_cell ()
QuadtreeNode ** get_children ()
Wpt farthest_pt (Wpt &p)
Wpt nearest_pt (Wpt &p)
void set_terms ()
ARRAY< QuadtreeNode * > & terms ()
double get_weight ()
void set_weight (double weight)
Wpt urand_pick ()

Protected Member Functions

void subdivide (OctreeNode *o, double regularity)
void set_terms (ARRAY< QuadtreeNode * > &terms)

Protected Attributes

bool _leaf
bool _in_cell
double _weight
Wpt _v1
Wpt _v2
Wpt _v3
QuadtreeNode_children [4]
ARRAY< QuadtreeNode * > _terms

Detailed Description

Definition at line 70 of file sps.H.


Constructor & Destructor Documentation

QuadtreeNode::QuadtreeNode Wpt  p1,
Wpt  p2,
Wpt  p3
[inline]
 

Definition at line 74 of file sps.H.

References _in_cell, _leaf, _v1, _v2, _v3, and _weight.

Referenced by subdivide().

QuadtreeNode::~QuadtreeNode  )  [inline]
 

Definition at line 84 of file sps.H.

References _children, _leaf, _terms, and ARRAY< T >::clear().


Member Function Documentation

double QuadtreeNode::area  )  [inline]
 

Definition at line 98 of file sps.H.

References _v1, _v2, _v3, and mlib::Point3< P, V >::dist().

Referenced by assign_weights(), and build_quadtree().

void QuadtreeNode::build_quadtree OctreeNode o,
double  regularity
 

Definition at line 494 of file sps.C.

References _in_cell, _leaf, _v1, _v2, _v3, area(), bface_bbox(), BBOX::contains(), BBOX::dim(), mlib::Point3< P, V >::dist(), OctreeNode::get_area(), mlib::Vec3< V >::length(), max(), BBOX::overlaps(), and subdivide().

Referenced by subdivide(), and visit().

Wpt QuadtreeNode::centroid  )  [inline]
 

Definition at line 93 of file sps.H.

References _v1, _v2, and _v3.

Referenced by assign_weights().

bool QuadtreeNode::contains CWpt pt,
double  threshold
[inline]
 

Definition at line 113 of file sps.H.

References _v1, _v2, _v3, mlib::cross(), mlib::Vec4::normalized(), v1(), v2(), and v3().

Referenced by urand_pick().

Wpt QuadtreeNode::farthest_pt Wpt p  ) 
 

Definition at line 539 of file sps.C.

References _v1, _v2, _v3, and mlib::Point3< P, V >::dist().

QuadtreeNode** QuadtreeNode::get_children  )  [inline]
 

Definition at line 146 of file sps.H.

References _children.

bool QuadtreeNode::get_leaf  )  [inline]
 

Definition at line 144 of file sps.H.

References _leaf.

double QuadtreeNode::get_weight  )  [inline]
 

Definition at line 151 of file sps.H.

References _weight.

Referenced by assign_weights().

bool QuadtreeNode::is_in_cell  )  [inline]
 

Definition at line 145 of file sps.H.

References _in_cell.

Wpt QuadtreeNode::nearest_pt Wpt p  ) 
 

Definition at line 527 of file sps.C.

References _v1, _v2, _v3, Bface::nearest_pt(), v1(), v2(), and v3().

void QuadtreeNode::set_leaf bool  leaf  )  [inline]
 

Definition at line 143 of file sps.H.

References _leaf.

void QuadtreeNode::set_terms ARRAY< QuadtreeNode * > &  terms  )  [protected]
 

Definition at line 390 of file sps.C.

References _children, _in_cell, _leaf, and set_terms().

void QuadtreeNode::set_terms  ) 
 

Definition at line 403 of file sps.C.

References _terms, and ARRAY< T >::clear().

Referenced by set_terms(), and visit().

void QuadtreeNode::set_weight double  weight  )  [inline]
 

Definition at line 152 of file sps.H.

References _weight.

Referenced by assign_weights().

void QuadtreeNode::subdivide OctreeNode o,
double  regularity
[protected]
 

Definition at line 477 of file sps.C.

References _children, _v1, _v2, _v3, build_quadtree(), and QuadtreeNode().

Referenced by build_quadtree().

ARRAY<QuadtreeNode*>& QuadtreeNode::terms  )  [inline]
 

Definition at line 150 of file sps.H.

References _terms.

Wpt QuadtreeNode::urand_pick  ) 
 

Definition at line 554 of file sps.C.

References _v1, _v2, _v3, contains(), and dorand().

Wpt QuadtreeNode::v1  )  [inline]
 

Definition at line 108 of file sps.H.

References _v1.

Referenced by bface_bbox(), contains(), and nearest_pt().

Wpt QuadtreeNode::v2  )  [inline]
 

Definition at line 109 of file sps.H.

References _v2.

Referenced by bface_bbox(), contains(), and nearest_pt().

Wpt QuadtreeNode::v3  )  [inline]
 

Definition at line 110 of file sps.H.

References _v3.

Referenced by bface_bbox(), contains(), and nearest_pt().


Member Data Documentation

QuadtreeNode* QuadtreeNode::_children[4] [protected]
 

Definition at line 165 of file sps.H.

Referenced by get_children(), set_terms(), subdivide(), and ~QuadtreeNode().

bool QuadtreeNode::_in_cell [protected]
 

Definition at line 162 of file sps.H.

Referenced by build_quadtree(), is_in_cell(), QuadtreeNode(), and set_terms().

bool QuadtreeNode::_leaf [protected]
 

Definition at line 161 of file sps.H.

Referenced by build_quadtree(), get_leaf(), QuadtreeNode(), set_leaf(), set_terms(), and ~QuadtreeNode().

ARRAY<QuadtreeNode*> QuadtreeNode::_terms [protected]
 

Definition at line 166 of file sps.H.

Referenced by set_terms(), terms(), and ~QuadtreeNode().

Wpt QuadtreeNode::_v1 [protected]
 

Definition at line 164 of file sps.H.

Referenced by area(), build_quadtree(), centroid(), contains(), farthest_pt(), nearest_pt(), QuadtreeNode(), subdivide(), urand_pick(), and v1().

Wpt QuadtreeNode::_v2 [protected]
 

Definition at line 164 of file sps.H.

Referenced by area(), build_quadtree(), centroid(), contains(), farthest_pt(), nearest_pt(), QuadtreeNode(), subdivide(), urand_pick(), and v2().

Wpt QuadtreeNode::_v3 [protected]
 

Definition at line 164 of file sps.H.

Referenced by area(), build_quadtree(), centroid(), contains(), farthest_pt(), nearest_pt(), QuadtreeNode(), subdivide(), urand_pick(), and v3().

double QuadtreeNode::_weight [protected]
 

Definition at line 163 of file sps.H.

Referenced by get_weight(), QuadtreeNode(), and set_weight().


The documentation for this class was generated from the following files:
Generated on Mon Sep 18 11:46:57 2006 for jot by  doxygen 1.4.4