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

#include <TimeRegion.h>

Inheritance diagram for SpatialIndex::TimeRegion:
Inheritance graph
Collaboration diagram for SpatialIndex::TimeRegion:
Collaboration graph

Public Member Functions

 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 Attributes

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 TimeRegion &r)
 

Detailed Description

Definition at line 32 of file TimeRegion.h.

Constructor & Destructor Documentation

◆ TimeRegion() [1/9]

TimeRegion::TimeRegion ( )

Definition at line 35 of file TimeRegion.cc.

References m_endTime, m_startTime, and SpatialIndex::Region::Region().

Referenced by clone(), and TimeRegion().

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

◆ TimeRegion() [2/9]

SpatialIndex::TimeRegion::TimeRegion ( const double *  pLow,
const double *  pHigh,
const Tools::IInterval ti,
uint32_t  dimension 
)

◆ TimeRegion() [3/9]

TimeRegion::TimeRegion ( const double *  pLow,
const double *  pHigh,
double  tStart,
double  tEnd,
uint32_t  dimension 
)

Definition at line 45 of file TimeRegion.cc.

References m_endTime, m_startTime, SpatialIndex::Region::Region(), and TimeRegion().

Here is the call graph for this function:

◆ TimeRegion() [4/9]

SpatialIndex::TimeRegion::TimeRegion ( const Point low,
const Point high,
const Tools::IInterval ti 
)

◆ TimeRegion() [5/9]

TimeRegion::TimeRegion ( const Point low,
const Point high,
double  tStart,
double  tEnd 
)

Definition at line 55 of file TimeRegion.cc.

References m_endTime, m_startTime, SpatialIndex::Region::Region(), and TimeRegion().

Here is the call graph for this function:

◆ TimeRegion() [6/9]

SpatialIndex::TimeRegion::TimeRegion ( const Region in,
const Tools::IInterval ti 
)

◆ TimeRegion() [7/9]

TimeRegion::TimeRegion ( const Region in,
double  tStart,
double  tEnd 
)

Definition at line 65 of file TimeRegion.cc.

◆ TimeRegion() [8/9]

TimeRegion::TimeRegion ( const TimePoint low,
const TimePoint high 
)

Definition at line 70 of file TimeRegion.cc.

◆ TimeRegion() [9/9]

TimeRegion::TimeRegion ( const TimeRegion in)

Definition at line 75 of file TimeRegion.cc.

References SpatialIndex::Region::m_dimension, SpatialIndex::Region::m_pHigh, SpatialIndex::Region::m_pLow, and ~TimeRegion().

Here is the call graph for this function:

◆ ~TimeRegion()

TimeRegion::~TimeRegion ( )
overridedefault

Referenced by TimeRegion().

Here is the caller graph for this function:

Member Function Documentation

◆ clone()

TimeRegion * TimeRegion::clone ( )
overridevirtual

Reimplemented from SpatialIndex::Region.

Definition at line 200 of file TimeRegion.cc.

References TimeRegion().

Here is the call graph for this function:

◆ combineRegionInTime()

void TimeRegion::combineRegionInTime ( const TimeRegion in)
virtual

Definition at line 181 of file TimeRegion.cc.

References SpatialIndex::Region::combineRegion(), m_endTime, and m_startTime.

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

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

◆ containsInterval()

bool TimeRegion::containsInterval ( const Tools::IInterval ti) const
overridevirtual

Implements Tools::IInterval.

Definition at line 365 of file TimeRegion.cc.

References m_endTime, and m_startTime.

Referenced by containsPointInTime(), and containsRegionInTime().

Here is the caller graph for this function:

◆ containsPointInTime()

bool TimeRegion::containsPointInTime ( const TimePoint in) const
virtual

Definition at line 164 of file TimeRegion.cc.

References containsInterval(), and SpatialIndex::Region::containsPoint().

Referenced by containsShapeInTime(), SpatialIndex::TimePoint::intersectsShapeInTime(), and intersectsShapeInTime().

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

◆ containsRegionInTime()

bool TimeRegion::containsRegionInTime ( const TimeRegion in) const
virtual

Definition at line 148 of file TimeRegion.cc.

References containsInterval(), and SpatialIndex::Region::containsRegion().

Referenced by containsShapeInTime().

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

◆ containsShapeInTime() [1/2]

bool TimeRegion::containsShapeInTime ( const ITimeShape in) const
overridevirtual

Implements SpatialIndex::ITimeShape.

Definition at line 269 of file TimeRegion.cc.

References containsPointInTime(), and containsRegionInTime().

Here is the call graph for this function:

◆ containsShapeInTime() [2/2]

bool SpatialIndex::TimeRegion::containsShapeInTime ( const Tools::IInterval ivI,
const ITimeShape in 
) const
overridevirtual

◆ getAreaInTime() [1/2]

double TimeRegion::getAreaInTime ( ) const
overridevirtual

Implements SpatialIndex::ITimeShape.

Definition at line 298 of file TimeRegion.cc.

◆ getAreaInTime() [2/2]

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

◆ getByteArraySize()

uint32_t TimeRegion::getByteArraySize ( )
overridevirtual

Reimplemented from SpatialIndex::Region.

Definition at line 208 of file TimeRegion.cc.

References SpatialIndex::Region::m_dimension.

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

Here is the caller graph for this function:

◆ getCombinedRegionInTime()

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

Definition at line 189 of file TimeRegion.cc.

References SpatialIndex::Region::getCombinedRegion(), m_endTime, and m_startTime.

Here is the call graph for this function:

◆ getIntersectingAreaInTime() [1/2]

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

Implements SpatialIndex::ITimeShape.

Definition at line 308 of file TimeRegion.cc.

◆ getIntersectingAreaInTime() [2/2]

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

◆ getIntervalType()

Tools::IntervalType TimeRegion::getIntervalType ( ) const
overridevirtual

Implements Tools::IInterval.

Definition at line 371 of file TimeRegion.cc.

References Tools::IT_RIGHTOPEN.

◆ getLowerBound()

double TimeRegion::getLowerBound ( ) const
overridevirtual

Implements Tools::IInterval.

Definition at line 332 of file TimeRegion.cc.

References m_startTime.

◆ getUpperBound()

double TimeRegion::getUpperBound ( ) const
overridevirtual

Implements Tools::IInterval.

Definition at line 337 of file TimeRegion.cc.

References m_endTime.

◆ intersectsInterval() [1/2]

bool SpatialIndex::TimeRegion::intersectsInterval ( const Tools::IInterval ti) const
overridevirtual

◆ intersectsInterval() [2/2]

bool TimeRegion::intersectsInterval ( Tools::IntervalType  t,
const double  start,
const double  end 
) const
overridevirtual

Implements Tools::IInterval.

Definition at line 355 of file TimeRegion.cc.

References m_endTime, and m_startTime.

◆ intersectsRegionInTime()

bool TimeRegion::intersectsRegionInTime ( const TimeRegion in) const
virtual

Definition at line 134 of file TimeRegion.cc.

References intersectsInterval(), and SpatialIndex::Region::intersectsRegion().

Referenced by intersectsShapeInTime().

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

◆ intersectsShapeInTime() [1/2]

bool TimeRegion::intersectsShapeInTime ( const ITimeShape in) const
overridevirtual

Implements SpatialIndex::ITimeShape.

Definition at line 253 of file TimeRegion.cc.

References containsPointInTime(), and intersectsRegionInTime().

Here is the call graph for this function:

◆ intersectsShapeInTime() [2/2]

bool SpatialIndex::TimeRegion::intersectsShapeInTime ( const Tools::IInterval ivI,
const ITimeShape in 
) const
overridevirtual

◆ loadFromByteArray()

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

Reimplemented from SpatialIndex::Region.

Definition at line 213 of file TimeRegion.cc.

References SpatialIndex::Region::m_dimension, m_endTime, SpatialIndex::Region::m_pHigh, SpatialIndex::Region::m_pLow, m_startTime, and makeDimension().

Referenced by SpatialIndex::MVRTree::Data::loadFromByteArray().

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

◆ makeDimension()

void TimeRegion::makeDimension ( uint32_t  dimension)
overridevirtual

◆ makeInfinite()

void TimeRegion::makeInfinite ( uint32_t  dimension)
overridevirtual

Reimplemented from SpatialIndex::Region.

Definition at line 376 of file TimeRegion.cc.

References SpatialIndex::Region::m_dimension, m_endTime, SpatialIndex::Region::m_pHigh, SpatialIndex::Region::m_pLow, m_startTime, and makeDimension().

Referenced by SpatialIndex::MVRTree::MVRTree::flush(), and SpatialIndex::MVRTree::Node::isIndex().

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

◆ operator=() [1/2]

TimeRegion & TimeRegion::operator= ( const TimeRegion r)
virtual

Definition at line 99 of file TimeRegion.cc.

References SpatialIndex::Region::m_dimension, m_endTime, SpatialIndex::Region::m_pHigh, SpatialIndex::Region::m_pLow, m_startTime, and makeDimension().

Here is the call graph for this function:

◆ operator=() [2/2]

Tools::IInterval & TimeRegion::operator= ( const Tools::IInterval i)
virtual

Definition at line 321 of file TimeRegion.cc.

References Tools::IInterval::getLowerBound(), Tools::IInterval::getUpperBound(), m_endTime, and m_startTime.

Here is the call graph for this function:

◆ operator==()

bool TimeRegion::operator== ( const TimeRegion r) const
virtual

◆ setBounds()

void TimeRegion::setBounds ( double  l,
double  h 
)
overridevirtual

Implements Tools::IInterval.

Definition at line 342 of file TimeRegion.cc.

References intersectsInterval(), m_endTime, and m_startTime.

Here is the call graph for this function:

◆ storeToByteArray()

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

Reimplemented from SpatialIndex::Region.

Definition at line 231 of file TimeRegion.cc.

References getByteArraySize(), SpatialIndex::Region::m_dimension, m_endTime, SpatialIndex::Region::m_pHigh, SpatialIndex::Region::m_pLow, and m_startTime.

Referenced by SpatialIndex::MVRTree::Data::storeToByteArray().

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

◆ touchesPointInTime()

bool TimeRegion::touchesPointInTime ( const TimePoint in) const
virtual

Definition at line 172 of file TimeRegion.cc.

References intersectsInterval(), and SpatialIndex::Region::touchesPoint().

Here is the call graph for this function:

◆ touchesRegionInTime()

bool TimeRegion::touchesRegionInTime ( const TimeRegion in) const
virtual

Definition at line 155 of file TimeRegion.cc.

References intersectsInterval(), and SpatialIndex::Region::touchesRegion().

Referenced by touchesShapeInTime().

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

◆ touchesShapeInTime() [1/2]

bool TimeRegion::touchesShapeInTime ( const ITimeShape in) const
overridevirtual

Implements SpatialIndex::ITimeShape.

Definition at line 285 of file TimeRegion.cc.

References touchesRegionInTime().

Here is the call graph for this function:

◆ touchesShapeInTime() [2/2]

bool SpatialIndex::TimeRegion::touchesShapeInTime ( const Tools::IInterval ivI,
const ITimeShape in 
) const
overridevirtual

Friends And Related Function Documentation

◆ operator<<

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

Member Data Documentation

◆ m_endTime

double SpatialIndex::TimeRegion::m_endTime

Definition at line 102 of file TimeRegion.h.

Referenced by SpatialIndex::MovingRegion::combineRegionAfterTime(), combineRegionInTime(), SpatialIndex::MovingRegion::combineRegionInTime(), containsInterval(), SpatialIndex::MovingRegion::containsPointInTime(), SpatialIndex::MovingRegion::containsRegionAfterTime(), SpatialIndex::MovingRegion::containsRegionAtTime(), SpatialIndex::MovingRegion::containsRegionInTime(), SpatialIndex::TPRTree::TPRTree::deleteData(), SpatialIndex::MVRTree::MVRTree::deleteData(), SpatialIndex::TPRTree::TPRTree::flush(), SpatialIndex::MVRTree::MVRTree::flush(), SpatialIndex::MovingRegion::getAreaInTime(), SpatialIndex::MovingRegion::getCenterDistanceInTime(), getCombinedRegionInTime(), SpatialIndex::MovingRegion::getHigh(), SpatialIndex::MovingRegion::getIntersectingAreaInTime(), SpatialIndex::MovingRegion::getLow(), SpatialIndex::MovingRegion::getProjectedSurfaceAreaInTime(), getUpperBound(), SpatialIndex::TPRTree::TPRTree::insertData(), SpatialIndex::MVRTree::MVRTree::insertData(), intersectsInterval(), SpatialIndex::MovingRegion::intersectsPointInTime(), SpatialIndex::MovingRegion::intersectsRegionAtTime(), SpatialIndex::MovingRegion::intersectsRegionInTime(), SpatialIndex::MVRTree::MVRTree::isIndexValid(), SpatialIndex::TPRTree::Node::loadFromByteArray(), SpatialIndex::MVRTree::Node::loadFromByteArray(), loadFromByteArray(), SpatialIndex::MovingRegion::loadFromByteArray(), makeInfinite(), SpatialIndex::MovingRegion::makeInfinite(), SpatialIndex::MovingRegion::MovingRegion(), SpatialIndex::operator<<(), operator=(), SpatialIndex::MovingRegion::operator=(), operator==(), SpatialIndex::MovingRegion::operator==(), setBounds(), SpatialIndex::MVRTree::Node::storeToByteArray(), storeToByteArray(), SpatialIndex::MovingRegion::storeToByteArray(), TimeRegion(), and SpatialIndex::MVRTree::Node::~Node().

◆ m_startTime

double SpatialIndex::TimeRegion::m_startTime

Definition at line 101 of file TimeRegion.h.

Referenced by SpatialIndex::MovingRegion::combineRegionAfterTime(), combineRegionInTime(), SpatialIndex::MovingRegion::combineRegionInTime(), containsInterval(), SpatialIndex::MovingRegion::containsPointInTime(), SpatialIndex::MovingRegion::containsRegionAtTime(), SpatialIndex::MovingRegion::containsRegionInTime(), SpatialIndex::TPRTree::TPRTree::deleteData(), SpatialIndex::MVRTree::MVRTree::deleteData(), SpatialIndex::TPRTree::TPRTree::flush(), SpatialIndex::MVRTree::MVRTree::flush(), SpatialIndex::MovingRegion::getAreaInTime(), SpatialIndex::MovingRegion::getCenterDistanceInTime(), getCombinedRegionInTime(), SpatialIndex::MovingRegion::getExtrapolatedHigh(), SpatialIndex::MovingRegion::getExtrapolatedLow(), SpatialIndex::MovingRegion::getHigh(), SpatialIndex::MovingRegion::getIntersectingAreaInTime(), SpatialIndex::MovingRegion::getLow(), getLowerBound(), SpatialIndex::MovingRegion::getProjectedSurfaceAreaInTime(), SpatialIndex::TPRTree::TPRTree::insertData(), SpatialIndex::MVRTree::MVRTree::insertData(), intersectsInterval(), SpatialIndex::MovingRegion::intersectsPointInTime(), SpatialIndex::MovingRegion::intersectsRegionAtTime(), SpatialIndex::MovingRegion::intersectsRegionInTime(), SpatialIndex::TPRTree::TPRTree::isIndexValid(), SpatialIndex::MVRTree::MVRTree::isIndexValid(), SpatialIndex::TPRTree::Node::loadFromByteArray(), SpatialIndex::MVRTree::Node::loadFromByteArray(), loadFromByteArray(), SpatialIndex::MovingRegion::loadFromByteArray(), makeInfinite(), SpatialIndex::MovingRegion::makeInfinite(), SpatialIndex::MovingRegion::MovingRegion(), SpatialIndex::operator<<(), operator=(), SpatialIndex::MovingRegion::operator=(), operator==(), SpatialIndex::MovingRegion::operator==(), setBounds(), SpatialIndex::TPRTree::Node::storeToByteArray(), SpatialIndex::MVRTree::Node::storeToByteArray(), storeToByteArray(), SpatialIndex::MovingRegion::storeToByteArray(), TimeRegion(), SpatialIndex::TPRTree::Node::~Node(), and SpatialIndex::MVRTree::Node::~Node().


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