GlobeEngine
geGIS::ClusterGrid Class Reference

#include <ClusterGrid.h>

Public Member Functions

 ClusterGrid ()
 
 ~ClusterGrid ()
 
void clear ()
 
void create (vmml::Vector2ui _clusterCount, vmml::Vector2d _clusterSize, vmml::Vector4d _objectBounds)
 
vmml::Vector2ui getClusterIDForPoint (const ge::Vertex2d &_p1, double _addDistance)
 
vmml::Vector4ui getClusterIDBoundsForLine (const ge::Vertex2d &_p1, const ge::Vertex2d &_p2, double _lineAdditionalDistance)
 
std::vector< unsigned intgetClustersByLineIntersection (const ge::Vertex2d &_p1, const ge::Vertex2d &_p2, double _lineWidth)
 
bool intersectLineWithClusters (vmml::Vector2ui _cluster, double _lineAdditionalDistance, const ge::Vertex2d &_p1, const ge::Vertex2d &_p2)
 
void assignLineToClusterIDs (unsigned int _lineSegmentID, std::vector< unsigned int > _clusterIds)
 
void copyClusterGridToGPUBuffer ()
 
void copyClusterGridBoundInfoToGPUBuffer ()
 
vmml::Vector2ui getClusterID2D (unsigned int _clusterID)
 
vmml::Vector4d getClusterBounds (vmml::Vector2ui _cluster, double _lineAdditionalDistance)
 
const ClusterGridTexturesgetClusterHandles ()
 
void setMortonForCluster (unsigned int _idx, std::vector< size_t > _mortonCodes)
 
std::vector< size_t > getMortonCodesForCluster (unsigned int _idx)
 
void setMaxMortonDepthForCluster (unsigned int _idx, unsigned int _depth)
 
void setMortonBoundOffsetForCluster (unsigned int _idx, unsigned int _offset)
 
unsigned int getLineSegmentIDForCluster (int _clusterID, int _lineIdx) const
 
unsigned int getNumberOfLinesForCluster (int _clusterId) const
 
unsigned int getGPUIndexCount () const
 
unsigned int getClusterCount () const
 
vmml::Vector2ui getClusterCount2D () const
 
vmml::Vector2d getClusterSize () const
 
vmml::Vector4d getBounds () const
 
vmml::Vector4d getClusterBounds () const
 

Constructor & Destructor Documentation

geGIS::ClusterGrid::ClusterGrid ( )
geGIS::ClusterGrid::~ClusterGrid ( )

Member Function Documentation

void geGIS::ClusterGrid::assignLineToClusterIDs ( unsigned int  _lineSegmentID,
std::vector< unsigned int _clusterIds 
)
void geGIS::ClusterGrid::clear ( )
void geGIS::ClusterGrid::copyClusterGridBoundInfoToGPUBuffer ( )
void geGIS::ClusterGrid::copyClusterGridToGPUBuffer ( )
void geGIS::ClusterGrid::create ( vmml::Vector2ui  _clusterCount,
vmml::Vector2d  _clusterSize,
vmml::Vector4d  _objectBounds 
)
vmml::Vector4d geGIS::ClusterGrid::getBounds ( ) const
vmml::Vector4d geGIS::ClusterGrid::getClusterBounds ( vmml::Vector2ui  _cluster,
double  _lineAdditionalDistance 
)
vmml::Vector4d geGIS::ClusterGrid::getClusterBounds ( ) const
unsigned int geGIS::ClusterGrid::getClusterCount ( ) const
vmml::Vector2ui geGIS::ClusterGrid::getClusterCount2D ( ) const
const ClusterGridTextures * geGIS::ClusterGrid::getClusterHandles ( )
vmml::Vector2ui geGIS::ClusterGrid::getClusterID2D ( unsigned int  _clusterID)
vmml::Vector4ui geGIS::ClusterGrid::getClusterIDBoundsForLine ( const ge::Vertex2d _p1,
const ge::Vertex2d _p2,
double  _lineAdditionalDistance 
)
vmml::Vector2ui geGIS::ClusterGrid::getClusterIDForPoint ( const ge::Vertex2d _p1,
double  _addDistance 
)
std::vector< unsigned int > geGIS::ClusterGrid::getClustersByLineIntersection ( const ge::Vertex2d _p1,
const ge::Vertex2d _p2,
double  _lineWidth 
)
vmml::Vector2d geGIS::ClusterGrid::getClusterSize ( ) const
unsigned int geGIS::ClusterGrid::getGPUIndexCount ( ) const
unsigned int geGIS::ClusterGrid::getLineSegmentIDForCluster ( int  _clusterID,
int  _lineIdx 
) const
std::vector< size_t > geGIS::ClusterGrid::getMortonCodesForCluster ( unsigned int  _idx)
unsigned int geGIS::ClusterGrid::getNumberOfLinesForCluster ( int  _clusterId) const
bool geGIS::ClusterGrid::intersectLineWithClusters ( vmml::Vector2ui  _cluster,
double  _lineAdditionalDistance,
const ge::Vertex2d _p1,
const ge::Vertex2d _p2 
)
void geGIS::ClusterGrid::setMaxMortonDepthForCluster ( unsigned int  _idx,
unsigned int  _depth 
)
void geGIS::ClusterGrid::setMortonBoundOffsetForCluster ( unsigned int  _idx,
unsigned int  _offset 
)
void geGIS::ClusterGrid::setMortonForCluster ( unsigned int  _idx,
std::vector< size_t >  _mortonCodes 
)

The documentation for this class was generated from the following files: