libspatialindex API Reference  (git-trunk)
SpatialIndex::MovingRegion Class Reference

#include <MovingRegion.h>

Inheritance diagram for SpatialIndex::MovingRegion:
Inheritance graph
Collaboration diagram for SpatialIndex::MovingRegion:
Collaboration graph

Classes

class  CrossPoint
 

Public Member Functions

 MovingRegion ()
 
 MovingRegion (const double *pLow, const double *pHigh, const double *pVLow, const double *pVHigh, const Tools::IInterval &ti, uint32_t dimension)
 
 MovingRegion (const double *pLow, const double *pHigh, const double *pVLow, const double *pVHigh, double tStart, double tEnd, uint32_t dimension)
 
 MovingRegion (const Point &low, const Point &high, const Point &vlow, const Point &vhigh, const Tools::IInterval &ti)
 
 MovingRegion (const Point &low, const Point &high, const Point &vlow, const Point &vhigh, double tStart, double tEnd)
 
 MovingRegion (const Region &mbr, const Region &vbr, const Tools::IInterval &ivI)
 
 MovingRegion (const Region &mbr, const Region &vbr, double tStart, double tEnd)
 
 MovingRegion (const MovingPoint &low, const MovingPoint &high)
 
 MovingRegion (const MovingRegion &in)
 
 ~MovingRegion () override
 
virtual MovingRegionoperator= (const MovingRegion &r)
 
virtual bool operator== (const MovingRegion &) const
 
bool isShrinking () const
 
virtual double getLow (uint32_t index, double t) const
 
virtual double getHigh (uint32_t index, double t) const
 
virtual double getExtrapolatedLow (uint32_t index, double t) const
 
virtual double getExtrapolatedHigh (uint32_t index, double t) const
 
virtual double getVLow (uint32_t index) const
 
virtual double getVHigh (uint32_t index) const
 
virtual bool intersectsRegionInTime (const MovingRegion &r) const
 
virtual bool intersectsRegionInTime (const MovingRegion &r, Tools::IInterval &out) const
 
virtual bool intersectsRegionInTime (const Tools::IInterval &ivI, const MovingRegion &r, Tools::IInterval &ret) const
 
virtual bool containsRegionInTime (const MovingRegion &r) const
 
virtual bool containsRegionInTime (const Tools::IInterval &ivI, const MovingRegion &r) const
 
virtual bool containsRegionAfterTime (double t, const MovingRegion &r) const
 
virtual double getProjectedSurfaceAreaInTime () const
 
virtual double getProjectedSurfaceAreaInTime (const Tools::IInterval &ivI) const
 
virtual double getCenterDistanceInTime (const MovingRegion &r) const
 
virtual double getCenterDistanceInTime (const Tools::IInterval &ivI, const MovingRegion &r) const
 
virtual bool intersectsRegionAtTime (double t, const MovingRegion &r) const
 
virtual bool containsRegionAtTime (double t, const MovingRegion &r) const
 
virtual bool intersectsPointInTime (const MovingPoint &p) const
 
virtual bool intersectsPointInTime (const MovingPoint &p, Tools::IInterval &out) const
 
virtual bool intersectsPointInTime (const Tools::IInterval &ivI, const MovingPoint &p, Tools::IInterval &out) const
 
virtual bool containsPointInTime (const MovingPoint &p) const
 
virtual bool containsPointInTime (const Tools::IInterval &ivI, const MovingPoint &p) const
 
virtual void combineRegionInTime (const MovingRegion &r)
 
virtual void combineRegionAfterTime (double t, const MovingRegion &r)
 
virtual void getCombinedRegionInTime (MovingRegion &out, const MovingRegion &in) const
 
virtual void getCombinedRegionAfterTime (double t, MovingRegion &out, const MovingRegion &in) const
 
virtual double getIntersectingAreaInTime (const MovingRegion &r) const
 
virtual double getIntersectingAreaInTime (const Tools::IInterval &ivI, const MovingRegion &r) const
 
MovingRegionclone () override
 
uint32_t getByteArraySize () override
 
void loadFromByteArray (const uint8_t *data) override
 
void storeToByteArray (uint8_t **data, uint32_t &len) override
 
void getVMBR (Region &out) const override
 
void getMBRAtTime (double t, Region &out) const override
 
double getAreaInTime () const override
 
double getAreaInTime (const Tools::IInterval &ivI) const override
 
double getIntersectingAreaInTime (const ITimeShape &r) const override
 
double getIntersectingAreaInTime (const Tools::IInterval &ivI, const ITimeShape &r) const override
 
void makeInfinite (uint32_t dimension) override
 
void makeDimension (uint32_t dimension) override
 
- Public Member Functions inherited from SpatialIndex::TimeRegion
 TimeRegion ()
 
 TimeRegion (const double *pLow, const double *pHigh, const Tools::IInterval &ti, uint32_t dimension)
 
 TimeRegion (const double *pLow, const double *pHigh, double tStart, double tEnd, uint32_t dimension)
 
 TimeRegion (const Point &low, const Point &high, const Tools::IInterval &ti)
 
 TimeRegion (const Point &low, const Point &high, double tStart, double tEnd)
 
 TimeRegion (const Region &in, const Tools::IInterval &ti)
 
 TimeRegion (const Region &in, double tStart, double tEnd)
 
 TimeRegion (const TimePoint &low, const TimePoint &high)
 
 TimeRegion (const TimeRegion &in)
 
 ~TimeRegion () override
 
virtual TimeRegionoperator= (const TimeRegion &r)
 
virtual bool operator== (const TimeRegion &) const
 
virtual bool intersectsRegionInTime (const TimeRegion &in) const
 
virtual bool containsRegionInTime (const TimeRegion &in) const
 
virtual bool touchesRegionInTime (const TimeRegion &in) const
 
virtual bool containsPointInTime (const TimePoint &in) const
 
virtual bool touchesPointInTime (const TimePoint &in) const
 
virtual void combineRegionInTime (const TimeRegion &in)
 
virtual void getCombinedRegionInTime (TimeRegion &out, const TimeRegion &in) const
 
TimeRegionclone () override
 
uint32_t getByteArraySize () override
 
void loadFromByteArray (const uint8_t *data) override
 
void storeToByteArray (uint8_t **data, uint32_t &len) override
 
bool intersectsShapeInTime (const ITimeShape &in) const override
 
bool intersectsShapeInTime (const Tools::IInterval &ivI, const ITimeShape &in) const override
 
bool containsShapeInTime (const ITimeShape &in) const override
 
bool containsShapeInTime (const Tools::IInterval &ivI, const ITimeShape &in) const override
 
bool touchesShapeInTime (const ITimeShape &in) const override
 
bool touchesShapeInTime (const Tools::IInterval &ivI, const ITimeShape &in) const override
 
double getAreaInTime () const override
 
double getAreaInTime (const Tools::IInterval &ivI) const override
 
double getIntersectingAreaInTime (const ITimeShape &r) const override
 
double getIntersectingAreaInTime (const Tools::IInterval &ivI, const ITimeShape &r) const override
 
virtual Tools::IIntervaloperator= (const Tools::IInterval &)
 
double getLowerBound () const override
 
double getUpperBound () const override
 
void setBounds (double, double) override
 
bool intersectsInterval (const Tools::IInterval &ti) const override
 
bool intersectsInterval (Tools::IntervalType t, const double start, const double end) const override
 
bool containsInterval (const Tools::IInterval &ti) const override
 
Tools::IntervalType getIntervalType () const override
 
void makeInfinite (uint32_t dimension) override
 
void makeDimension (uint32_t dimension) override
 
- Public Member Functions inherited from SpatialIndex::Region
 Region ()
 
 Region (const double *pLow, const double *pHigh, uint32_t dimension)
 
 Region (const Point &low, const Point &high)
 
 Region (const Region &in)
 
 ~Region () override
 
virtual Regionoperator= (const Region &r)
 
virtual bool operator== (const Region &) const
 
bool intersectsShape (const IShape &in) const override
 
bool containsShape (const IShape &in) const override
 
bool touchesShape (const IShape &in) const override
 
void getCenter (Point &out) const override
 
uint32_t getDimension () const override
 
void getMBR (Region &out) const override
 
double getArea () const override
 
double getMinimumDistance (const IShape &in) const override
 
virtual bool intersectsRegion (const Region &in) const
 
virtual bool containsRegion (const Region &in) const
 
virtual bool touchesRegion (const Region &in) const
 
virtual double getMinimumDistance (const Region &in) const
 
virtual bool intersectsLineSegment (const LineSegment &in) const
 
virtual bool containsPoint (const Point &in) const
 
virtual bool touchesPoint (const Point &in) const
 
virtual double getMinimumDistance (const Point &in) const
 
virtual Region getIntersectingRegion (const Region &r) const
 
virtual double getIntersectingArea (const Region &in) const
 
virtual double getMargin () const
 
virtual void combineRegion (const Region &in)
 
virtual void combinePoint (const Point &in)
 
virtual void getCombinedRegion (Region &out, const Region &in) const
 
virtual double getLow (uint32_t index) const
 
virtual double getHigh (uint32_t index) const
 
- Public Member Functions inherited from Tools::IObject
virtual ~IObject ()=default
 
- Public Member Functions inherited from SpatialIndex::IShape
 ~IShape () override=default
 
- Public Member Functions inherited from Tools::ISerializable
virtual ~ISerializable ()=default
 
- Public Member Functions inherited from SpatialIndex::ITimeShape
 ~ITimeShape () override=default
 
- Public Member Functions inherited from Tools::IInterval
virtual ~IInterval ()=default
 
- Public Member Functions inherited from SpatialIndex::IEvolvingShape
virtual ~IEvolvingShape ()=default
 

Public Attributes

double * m_pVLow {nullptr}
 
double * m_pVHigh {nullptr}
 
- Public Attributes inherited from SpatialIndex::TimeRegion
double m_startTime
 
double m_endTime
 
- Public Attributes inherited from SpatialIndex::Region
uint32_t m_dimension {0}
 
double * m_pLow {nullptr}
 
double * m_pHigh {nullptr}
 

Friends

SIDX_DLL std::ostream & operator<< (std::ostream &os, const MovingRegion &r)
 

Detailed Description

Definition at line 32 of file MovingRegion.h.

Constructor & Destructor Documentation

◆ MovingRegion() [1/9]

MovingRegion::MovingRegion ( )

Definition at line 42 of file MovingRegion.cc.

Referenced by clone(), and MovingRegion().

Here is the caller graph for this function:

◆ MovingRegion() [2/9]

SpatialIndex::MovingRegion::MovingRegion ( const double *  pLow,
const double *  pHigh,
const double *  pVLow,
const double *  pVHigh,
const Tools::IInterval ti,
uint32_t  dimension 
)

◆ MovingRegion() [3/9]

MovingRegion::MovingRegion ( const double *  pLow,
const double *  pHigh,
const double *  pVLow,
const double *  pVHigh,
double  tStart,
double  tEnd,
uint32_t  dimension 
)

Definition at line 55 of file MovingRegion.cc.

References SpatialIndex::Point::m_dimension, SpatialIndex::Point::m_pCoords, and MovingRegion().

Here is the call graph for this function:

◆ MovingRegion() [4/9]

SpatialIndex::MovingRegion::MovingRegion ( const Point low,
const Point high,
const Point vlow,
const Point vhigh,
const Tools::IInterval ti 
)

◆ MovingRegion() [5/9]

MovingRegion::MovingRegion ( const Point low,
const Point high,
const Point vlow,
const Point vhigh,
double  tStart,
double  tEnd 
)

◆ MovingRegion() [6/9]

SpatialIndex::MovingRegion::MovingRegion ( const Region mbr,
const Region vbr,
const Tools::IInterval ivI 
)

◆ MovingRegion() [7/9]

MovingRegion::MovingRegion ( const Region mbr,
const Region vbr,
double  tStart,
double  tEnd 
)

◆ MovingRegion() [8/9]

◆ MovingRegion() [9/9]

◆ ~MovingRegion()

MovingRegion::~MovingRegion ( )
override

Definition at line 216 of file MovingRegion.cc.

References m_pVHigh, and m_pVLow.

Member Function Documentation

◆ clone()

MovingRegion * MovingRegion::clone ( )
overridevirtual

Implements Tools::IObject.

Definition at line 1023 of file MovingRegion.cc.

References MovingRegion().

Here is the call graph for this function:

◆ combineRegionAfterTime()

void MovingRegion::combineRegionAfterTime ( double  t,
const MovingRegion r 
)
virtual

◆ combineRegionInTime()

void MovingRegion::combineRegionInTime ( const MovingRegion r)
virtual

◆ containsPointInTime() [1/2]

◆ containsPointInTime() [2/2]

virtual bool SpatialIndex::MovingRegion::containsPointInTime ( const Tools::IInterval ivI,
const MovingPoint p 
) const
virtual

◆ containsRegionAfterTime()

bool MovingRegion::containsRegionAfterTime ( double  t,
const MovingRegion r 
) const
virtual

Definition at line 494 of file MovingRegion.cc.

References containsRegionInTime(), and SpatialIndex::TimeRegion::m_endTime.

Referenced by SpatialIndex::TPRTree::Node::~Node().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ containsRegionAtTime()

bool MovingRegion::containsRegionAtTime ( double  t,
const MovingRegion r 
) const
virtual

◆ containsRegionInTime() [1/2]

bool MovingRegion::containsRegionInTime ( const MovingRegion r) const
virtual

◆ containsRegionInTime() [2/2]

virtual bool SpatialIndex::MovingRegion::containsRegionInTime ( const Tools::IInterval ivI,
const MovingRegion r 
) const
virtual

◆ getAreaInTime() [1/2]

double MovingRegion::getAreaInTime ( ) const
overridevirtual

Implements SpatialIndex::ITimeShape.

Definition at line 1104 of file MovingRegion.cc.

References getExtrapolatedHigh(), getExtrapolatedLow(), getVHigh(), getVLow(), SpatialIndex::Region::m_dimension, SpatialIndex::TimeRegion::m_endTime, and SpatialIndex::TimeRegion::m_startTime.

Referenced by getIntersectingAreaInTime(), and SpatialIndex::TPRTree::Node::~Node().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getAreaInTime() [2/2]

double SpatialIndex::MovingRegion::getAreaInTime ( const Tools::IInterval ivI) const
overridevirtual

◆ getByteArraySize()

uint32_t MovingRegion::getByteArraySize ( )
overridevirtual

Implements Tools::ISerializable.

Definition at line 1031 of file MovingRegion.cc.

References SpatialIndex::Region::m_dimension.

Referenced by SpatialIndex::TPRTree::Data::getByteArraySize(), and storeToByteArray().

Here is the caller graph for this function:

◆ getCenterDistanceInTime() [1/2]

double MovingRegion::getCenterDistanceInTime ( const MovingRegion r) const
virtual

Definition at line 559 of file MovingRegion.cc.

References getExtrapolatedHigh(), getExtrapolatedLow(), getVHigh(), getVLow(), SpatialIndex::Region::m_dimension, SpatialIndex::TimeRegion::m_endTime, and SpatialIndex::TimeRegion::m_startTime.

Referenced by SpatialIndex::TPRTree::Node::~Node().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getCenterDistanceInTime() [2/2]

virtual double SpatialIndex::MovingRegion::getCenterDistanceInTime ( const Tools::IInterval ivI,
const MovingRegion r 
) const
virtual

◆ getCombinedRegionAfterTime()

void MovingRegion::getCombinedRegionAfterTime ( double  t,
MovingRegion out,
const MovingRegion in 
) const
virtual

Definition at line 854 of file MovingRegion.cc.

References combineRegionAfterTime(), and SpatialIndex::Region::m_dimension.

Here is the call graph for this function:

◆ getCombinedRegionInTime()

void MovingRegion::getCombinedRegionInTime ( MovingRegion out,
const MovingRegion in 
) const
virtual

Definition at line 827 of file MovingRegion.cc.

References combineRegionInTime(), and SpatialIndex::Region::m_dimension.

Here is the call graph for this function:

◆ getExtrapolatedHigh()

◆ getExtrapolatedLow()

◆ getHigh()

double MovingRegion::getHigh ( uint32_t  index,
double  t 
) const
virtual

◆ getIntersectingAreaInTime() [1/4]

◆ getIntersectingAreaInTime() [2/4]

virtual double SpatialIndex::MovingRegion::getIntersectingAreaInTime ( const Tools::IInterval ivI,
const MovingRegion r 
) const
virtual

◆ getIntersectingAreaInTime() [3/4]

double MovingRegion::getIntersectingAreaInTime ( const ITimeShape r) const
overridevirtual

Implements SpatialIndex::ITimeShape.

Definition at line 1159 of file MovingRegion.cc.

References getIntersectingAreaInTime().

Here is the call graph for this function:

◆ getIntersectingAreaInTime() [4/4]

double SpatialIndex::MovingRegion::getIntersectingAreaInTime ( const Tools::IInterval ivI,
const ITimeShape r 
) const
overridevirtual

◆ getLow()

double MovingRegion::getLow ( uint32_t  index,
double  t 
) const
virtual

◆ getMBRAtTime()

void MovingRegion::getMBRAtTime ( double  t,
Region out 
) const
overridevirtual

◆ getProjectedSurfaceAreaInTime() [1/2]

double MovingRegion::getProjectedSurfaceAreaInTime ( ) const
virtual

Definition at line 504 of file MovingRegion.cc.

References getExtrapolatedHigh(), getExtrapolatedLow(), getVHigh(), getVLow(), SpatialIndex::Region::m_dimension, SpatialIndex::TimeRegion::m_endTime, and SpatialIndex::TimeRegion::m_startTime.

Referenced by SpatialIndex::TPRTree::Node::~Node().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getProjectedSurfaceAreaInTime() [2/2]

virtual double SpatialIndex::MovingRegion::getProjectedSurfaceAreaInTime ( const Tools::IInterval ivI) const
virtual

◆ getVHigh()

double MovingRegion::getVHigh ( uint32_t  index) const
virtual

◆ getVLow()

double MovingRegion::getVLow ( uint32_t  index) const
virtual

◆ getVMBR()

void MovingRegion::getVMBR ( Region out) const
overridevirtual

◆ intersectsPointInTime() [1/3]

◆ intersectsPointInTime() [2/3]

virtual bool SpatialIndex::MovingRegion::intersectsPointInTime ( const MovingPoint p,
Tools::IInterval out 
) const
virtual

◆ intersectsPointInTime() [3/3]

virtual bool SpatialIndex::MovingRegion::intersectsPointInTime ( const Tools::IInterval ivI,
const MovingPoint p,
Tools::IInterval out 
) const
virtual

◆ intersectsRegionAtTime()

bool MovingRegion::intersectsRegionAtTime ( double  t,
const MovingRegion r 
) const
virtual

◆ intersectsRegionInTime() [1/3]

bool MovingRegion::intersectsRegionInTime ( const MovingRegion r) const
virtual

◆ intersectsRegionInTime() [2/3]

virtual bool SpatialIndex::MovingRegion::intersectsRegionInTime ( const MovingRegion r,
Tools::IInterval out 
) const
virtual

◆ intersectsRegionInTime() [3/3]

virtual bool SpatialIndex::MovingRegion::intersectsRegionInTime ( const Tools::IInterval ivI,
const MovingRegion r,
Tools::IInterval ret 
) const
virtual

◆ isShrinking()

bool MovingRegion::isShrinking ( ) const

Definition at line 265 of file MovingRegion.cc.

References SpatialIndex::Region::m_dimension, m_pVHigh, and m_pVLow.

Referenced by containsPointInTime(), containsRegionInTime(), getIntersectingAreaInTime(), intersectsPointInTime(), and intersectsRegionInTime().

Here is the caller graph for this function:

◆ loadFromByteArray()

void MovingRegion::loadFromByteArray ( const uint8_t *  data)
overridevirtual

◆ makeDimension()

void MovingRegion::makeDimension ( uint32_t  dimension)
overridevirtual

◆ makeInfinite()

void MovingRegion::makeInfinite ( uint32_t  dimension)
overridevirtual

◆ operator=()

◆ operator==()

◆ storeToByteArray()

void MovingRegion::storeToByteArray ( uint8_t **  data,
uint32_t &  len 
)
overridevirtual

Friends And Related Function Documentation

◆ operator<<

SIDX_DLL std::ostream& operator<< ( std::ostream &  os,
const MovingRegion r 
)
friend

Member Data Documentation

◆ m_pVHigh

◆ m_pVLow


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