#include <ogdf/energybased/dtree/DTreeWSPD.h>
Classes | |
struct | NodeData |
geometry for the quadtree nodes More... | |
struct | PointData |
world coordinates of the points More... | |
Public Types | |
using | IntType = unsigned int |
using | Tree = DTree< IntType, Dim > |
Public Member Functions | |
DTreeWSPD (int numPoints) | |
constructs a new WSPD for numPoints More... | |
~DTreeWSPD () | |
destructor More... | |
void | computeWSPD (IWSPD *m_pIWSPD) |
const NodeData & | node (int i) const |
returns the data for a quadtree More... | |
const PointData & | point (int i) const |
return ith point More... | |
double | separationFactor () const |
returns the parameter s of the WSPD (default is 1.0) More... | |
void | setPoint (int i, int d, double coord) |
sets the point to the given coords More... | |
void | setSeparationFactor (double s) |
sets the parameter s of the WSPD (default is 1.0) More... | |
const Tree & | tree () const |
returns the corresponding Dtree More... | |
void | update () |
call this when the point set has been updated. More... | |
Protected Member Functions | |
void | allocate () |
allocate mem More... | |
bool | areWellSeparated (int a, int b) const |
predicate for determining if cells are well-separated More... | |
bool | areWellSeparated (int a, int b) const |
bool | areWellSeparated (int a, int b) const |
void | deallocate () |
free mem More... | |
NodeData & | node (int i) |
returns the data for a quadtree More... | |
void | updateBoundingBox () |
updates the bounding box by iterating over all points More... | |
void | updateTreeGridPoints () |
updates the integer grid points in the quadtree More... | |
void | updateTreeNodeGeometry () |
updates the geometry of the quadtree nodes More... | |
void | updateTreeNodeGeometry (int curr) |
the recursive function of the above More... | |
void | wspdRecursive (int a) |
the unary recursive function generating the binary calls More... | |
void | wspdRecursive (int a, int b) |
the binary recursive function to separate the subtree a and b More... | |
Protected Attributes | |
double | m_bboxMax [Dim] |
the bounding box max coord of the point set More... | |
double | m_bboxMin [Dim] |
the bounding box min coord of the point set More... | |
NodeData * | m_nodeData = nullptr |
geometry for the quadtree nodes More... | |
int | m_numPoints |
number of points More... | |
IWSPD * | m_pIWSPD = nullptr |
PointData * | m_pointData = nullptr |
point data More... | |
Tree * | m_pTree = nullptr |
the quadtree this wspd is working on More... | |
double | m_wspdSeparationFactor |
the separation factor for the ws predicate More... | |
double | m_wspdSeparationFactorPlus2Squared_cached |
a cached value for the ws test More... | |
Definition at line 45 of file DTreeWSPD.h.
using ogdf::energybased::dtree::DTreeWSPD< Dim >::IntType = unsigned int |
Definition at line 47 of file DTreeWSPD.h.
using ogdf::energybased::dtree::DTreeWSPD< Dim >::Tree = DTree<IntType, Dim> |
Definition at line 48 of file DTreeWSPD.h.
|
explicit |
constructs a new WSPD for numPoints
Definition at line 161 of file DTreeWSPD.h.
ogdf::energybased::dtree::DTreeWSPD< Dim >::~DTreeWSPD |
destructor
Definition at line 176 of file DTreeWSPD.h.
|
protected |
allocate mem
Definition at line 182 of file DTreeWSPD.h.
|
protected |
predicate for determining if cells are well-separated
Definition at line 272 of file DTreeWSPD.h.
|
protected |
Definition at line 304 of file DTreeWSPD.h.
|
protected |
Definition at line 318 of file DTreeWSPD.h.
void ogdf::energybased::dtree::DTreeWSPD< Dim >::computeWSPD | ( | IWSPD * | m_pIWSPD | ) |
Definition at line 211 of file DTreeWSPD.h.
|
protected |
free mem
Definition at line 189 of file DTreeWSPD.h.
|
inlineprotected |
returns the data for a quadtree
Definition at line 105 of file DTreeWSPD.h.
|
inline |
returns the data for a quadtree
Definition at line 84 of file DTreeWSPD.h.
|
inline |
return ith point
Definition at line 90 of file DTreeWSPD.h.
|
inline |
returns the parameter s of the WSPD (default is 1.0)
Definition at line 96 of file DTreeWSPD.h.
void ogdf::energybased::dtree::DTreeWSPD< Dim >::setPoint | ( | int | i, |
int | d, | ||
double | coord | ||
) |
sets the point to the given coords
Definition at line 334 of file DTreeWSPD.h.
|
inline |
sets the parameter s of the WSPD (default is 1.0)
Definition at line 99 of file DTreeWSPD.h.
|
inline |
returns the corresponding Dtree
Definition at line 81 of file DTreeWSPD.h.
void ogdf::energybased::dtree::DTreeWSPD< Dim >::update |
call this when the point set has been updated.
Definition at line 196 of file DTreeWSPD.h.
|
protected |
updates the bounding box by iterating over all points
Definition at line 339 of file DTreeWSPD.h.
|
protected |
updates the integer grid points in the quadtree
Definition at line 360 of file DTreeWSPD.h.
|
protected |
updates the geometry of the quadtree nodes
Definition at line 394 of file DTreeWSPD.h.
|
protected |
the recursive function of the above
Definition at line 400 of file DTreeWSPD.h.
|
protected |
the unary recursive function generating the binary calls
Definition at line 226 of file DTreeWSPD.h.
|
protected |
the binary recursive function to separate the subtree a and b
Definition at line 247 of file DTreeWSPD.h.
|
protected |
the bounding box max coord of the point set
Definition at line 156 of file DTreeWSPD.h.
|
protected |
the bounding box min coord of the point set
Definition at line 153 of file DTreeWSPD.h.
|
protected |
geometry for the quadtree nodes
Definition at line 147 of file DTreeWSPD.h.
|
protected |
number of points
Definition at line 135 of file DTreeWSPD.h.
|
protected |
Definition at line 102 of file DTreeWSPD.h.
|
protected |
point data
Definition at line 150 of file DTreeWSPD.h.
|
protected |
the quadtree this wspd is working on
Definition at line 144 of file DTreeWSPD.h.
|
protected |
the separation factor for the ws predicate
Definition at line 138 of file DTreeWSPD.h.
|
protected |
a cached value for the ws test
Definition at line 141 of file DTreeWSPD.h.