C# Class SharpMap.Utilities.SpatialIndexing.QuadTree

Constructs a Quad-tree node from a object list and creates its children recursively
Inheritance: IDisposable
Datei anzeigen Open project: jumpinjackie/fdotoolbox Class Usage Examples

Public Properties

Property Type Description
_ID uint?

Protected Properties

Property Type Description
_Depth uint

Public Methods

Method Description
Dispose ( ) : void

Disposes the node

ErrorMetric ( SharpMap box ) : double

Calculate the floating point error metric

FromFile ( string filename ) : QuadTree

Loads a quadtree from a file

QuadTree ( List objList, uint depth, Heuristic heurdata ) : System

Creates a node and either splits the objects recursively into sub-nodes, or stores them at the node depending on the heuristics. Tree is built top->down

SaveIndex ( string filename ) : void

Saves the Quadtree to a file

Search ( SharpMap box ) : List

Searches the tree and looks for intersections with the boundingbox 'bbox'

Private Methods

Method Description
IntersectTreeRecursive ( SharpMap box, QuadTree node, List &list ) : void

Recursive function that traverses the tree and looks for intersections with a boundingbox

QuadTree ( ) : System

This instantiator is used internally for loading a tree from a file

ReadNode ( uint depth, System &br ) : QuadTree

Reads a node from a stream recursively

SaveNode ( QuadTree node, System &sw ) : void

Saves a node to a stream recursively

Method Details

Dispose() public method

Disposes the node
public Dispose ( ) : void
return void

ErrorMetric() public method

Calculate the floating point error metric
public ErrorMetric ( SharpMap box ) : double
box SharpMap
return double

FromFile() public static method

Loads a quadtree from a file
public static FromFile ( string filename ) : QuadTree
filename string
return QuadTree

QuadTree() public method

Creates a node and either splits the objects recursively into sub-nodes, or stores them at the node depending on the heuristics. Tree is built top->down
public QuadTree ( List objList, uint depth, Heuristic heurdata ) : System
objList List Geometries to index
depth uint Current depth of tree
heurdata Heuristic Heuristics data
return System

SaveIndex() public method

Saves the Quadtree to a file
public SaveIndex ( string filename ) : void
filename string
return void

Search() public method

Searches the tree and looks for intersections with the boundingbox 'bbox'
public Search ( SharpMap box ) : List
box SharpMap Boundingbox to intersect with
return List

Property Details

_Depth protected_oe property

Nodes depth in a tree
protected uint _Depth
return uint

_ID public_oe property

Node ID
public uint? _ID
return uint?