CAPD::DynSys Library  6.0.0
capd::covrel::TripleSet Class Referenceabstract

TripleSet - a planar h-set with one unstable direction Authors: Implementation of derived classes and functions: Jaroslaw Dulak and Daniel Wilczak. More...

#include <capd/covrel/TripleSet.h>

Public Types

typedef capd::vectalg::Vector< double, 2 > FloatVector
 
typedef capd::vectalg::Vector< interval, 2 > IntervalVector
 
typedef IntervalVector::ScalarType Interval
 
typedef FloatVector::size_type size_type
 
typedef capd::vectalg::Vector< double, 2 > VectorType
 
typedef capd::vectalg::Vector< interval, 2 > IVectorType
 

Public Member Functions

 TripleSet (const FloatVector &a_center, const FloatVector &a_stable, const FloatVector &a_unstable)
 
 TripleSet (const IntervalVector &a_center, const IntervalVector &a_stable, const IntervalVector &a_unstable)
 
 TripleSet ()
 
 ~TripleSet ()
 
bool outside (const FloatVector &point) const
 
bool inside (const FloatVector &point) const
 
bool across (const FloatVector &point) const
 true - is returned if point is either in the open horizonal strip defined by 'horizontal' egdes or on the left or on the right side both sides are open by definition More...
 
bool mapaway (const FloatVector &point) const
 
bool onLeft (const FloatVector &point) const
 
bool onRight (const FloatVector &point) const
 BC - is the 'right' edge - the condition for the point to be on the right side is: orientation (C,B,point)=1 returns true if point is in the right side (open) of N, false- otherwise;. More...
 
bool outside (const IntervalVector &point) const
 returns true if vect does not intersect support of this More...
 
bool inside (const IntervalVector &point) const
 true is returned if point is in the interior of support More...
 
bool across (const IntervalVector &point) const
 true- is returned if for each point, x, in vect either one of the following conditions hold: More...
 
bool mapaway (const IntervalVector &point) const
 ??? More...
 
bool onLeft (const IntervalVector &point) const
 the egde (DA) - is a 'left' egde - and the condition for a point to be on the left side is - orientation(D,A,point)=-1 More...
 
bool onRight (const IntervalVector &point) const
 BC - is the 'right' edge - the condition for the point to be on the right side is: orientation (C,B,point)=1 returns true if vect is in the right side (open) of N. More...
 
template<typename IMatrix >
GridSet< IMatrix > & gridLeftEdge (GridSet< IMatrix > &G, size_type grid, size_type d1=0, size_type d2=1) const
 in the G it returns uniform grid of the left edge More...
 
template<typename IMatrix >
GridSet< IMatrix > & gridRightEdge (GridSet< IMatrix > &G, size_type grid, size_type d1=0, size_type d2=1) const
 
template<typename IMatrix >
GridSet< IMatrix > & gridBottomEdge (GridSet< IMatrix > &G, size_type grid, size_type d1=0, size_type d2=1) const
 
template<typename IMatrix >
GridSet< IMatrix > & gridTopEdge (GridSet< IMatrix > &G, size_type grid, size_type d1=0, size_type d2=1) const
 
template<typename IMatrix >
GridSet< IMatrix > & gridSet (GridSet< IMatrix > &G, size_type grid1, size_type grid2, size_type d1=0, size_type d2=1) const
 
virtual bool outside (const VectorType &) const=0
 
virtual bool inside (const VectorType &) const=0
 
virtual bool across (const VectorType &) const=0
 
virtual bool mapaway (const VectorType &) const=0
 

Public Attributes

FloatVector center
 
FloatVector stable
 
FloatVector unstable
 
IntervalVector Icenter
 
IntervalVector Istable
 
IntervalVector Iunstable
 
FloatVector A
 
FloatVector B
 
FloatVector C
 
FloatVector D
 
IntervalVector IA
 
IntervalVector IB
 
IntervalVector IC
 
IntervalVector ID
 
int max_recursion
 

Detailed Description

TripleSet - a planar h-set with one unstable direction Authors: Implementation of derived classes and functions: Jaroslaw Dulak and Daniel Wilczak.

Member Typedef Documentation

◆ FloatVector

◆ Interval

◆ IntervalVector

◆ IVectorType

◆ size_type

typedef FloatVector::size_type capd::covrel::TripleSet::size_type

◆ VectorType

Constructor & Destructor Documentation

◆ TripleSet() [1/3]

capd::covrel::TripleSet::TripleSet ( const FloatVector a_center,
const FloatVector a_stable,
const FloatVector a_unstable 
)

◆ TripleSet() [2/3]

capd::covrel::TripleSet::TripleSet ( const IntervalVector a_center,
const IntervalVector a_stable,
const IntervalVector a_unstable 
)

◆ TripleSet() [3/3]

capd::covrel::TripleSet::TripleSet ( )
inline

◆ ~TripleSet()

capd::covrel::TripleSet::~TripleSet ( )
inline

Member Function Documentation

◆ across() [1/3]

bool capd::covrel::TripleSet::across ( const FloatVector point) const

true - is returned if point is either in the open horizonal strip defined by 'horizontal' egdes or on the left or on the right side both sides are open by definition

◆ across() [2/3]

bool capd::covrel::TripleSet::across ( const IntervalVector vect) const
virtual

true- is returned if for each point, x, in vect either one of the following conditions hold:

  • x is on the left to N
  • x is on the right to N
  • x is in support of N, but does not touch the N^+ but to satisfy the last condition it is enough for a point to be in the interior of the horizontal strip defined by the egdes in N^+ - AB and CD

Implements capd::covrel::HSet< capd::vectalg::Vector< double, 2 >, capd::vectalg::Vector< interval, 2 > >.

◆ across() [3/3]

virtual bool capd::covrel::HSet< capd::vectalg::Vector< double, 2 > , capd::vectalg::Vector< interval, 2 > >::across ( const VectorType ) const
pure virtualinherited

◆ inside() [1/3]

bool capd::covrel::TripleSet::inside ( const FloatVector point) const

◆ inside() [2/3]

bool capd::covrel::TripleSet::inside ( const IntervalVector point) const
virtual

true is returned if point is in the interior of support

Implements capd::covrel::HSet< capd::vectalg::Vector< double, 2 >, capd::vectalg::Vector< interval, 2 > >.

◆ inside() [3/3]

virtual bool capd::covrel::HSet< capd::vectalg::Vector< double, 2 > , capd::vectalg::Vector< interval, 2 > >::inside ( const VectorType ) const
pure virtualinherited

◆ mapaway() [1/3]

bool capd::covrel::TripleSet::mapaway ( const FloatVector point) const

◆ mapaway() [2/3]

bool capd::covrel::TripleSet::mapaway ( const IntervalVector set) const
virtual

◆ mapaway() [3/3]

virtual bool capd::covrel::HSet< capd::vectalg::Vector< double, 2 > , capd::vectalg::Vector< interval, 2 > >::mapaway ( const VectorType ) const
pure virtualinherited

◆ onLeft() [1/2]

bool capd::covrel::TripleSet::onLeft ( const FloatVector point) const

◆ onLeft() [2/2]

bool capd::covrel::TripleSet::onLeft ( const IntervalVector point) const

the egde (DA) - is a 'left' egde - and the condition for a point to be on the left side is - orientation(D,A,point)=-1

◆ onRight() [1/2]

bool capd::covrel::TripleSet::onRight ( const FloatVector point) const

BC - is the 'right' edge - the condition for the point to be on the right side is: orientation (C,B,point)=1 returns true if point is in the right side (open) of N, false- otherwise;.

◆ onRight() [2/2]

bool capd::covrel::TripleSet::onRight ( const IntervalVector point) const

BC - is the 'right' edge - the condition for the point to be on the right side is: orientation (C,B,point)=1 returns true if vect is in the right side (open) of N.

◆ outside() [1/3]

bool capd::covrel::TripleSet::outside ( const FloatVector point) const

◆ outside() [2/3]

bool capd::covrel::TripleSet::outside ( const IntervalVector point) const
virtual

returns true if vect does not intersect support of this

Implements capd::covrel::HSet< capd::vectalg::Vector< double, 2 >, capd::vectalg::Vector< interval, 2 > >.

◆ outside() [3/3]

virtual bool capd::covrel::HSet< capd::vectalg::Vector< double, 2 > , capd::vectalg::Vector< interval, 2 > >::outside ( const VectorType ) const
pure virtualinherited

Member Data Documentation

◆ A

FloatVector capd::covrel::TripleSet::A

◆ B

FloatVector capd::covrel::TripleSet::B

◆ C

FloatVector capd::covrel::TripleSet::C

◆ center

FloatVector capd::covrel::TripleSet::center

◆ D

FloatVector capd::covrel::TripleSet::D

◆ IA

IntervalVector capd::covrel::TripleSet::IA

◆ IB

IntervalVector capd::covrel::TripleSet::IB

◆ IC

IntervalVector capd::covrel::TripleSet::IC

◆ Icenter

IntervalVector capd::covrel::TripleSet::Icenter

◆ ID

IntervalVector capd::covrel::TripleSet::ID

◆ Istable

IntervalVector capd::covrel::TripleSet::Istable

◆ Iunstable

IntervalVector capd::covrel::TripleSet::Iunstable

◆ max_recursion

int capd::covrel::TripleSet::max_recursion

◆ stable

FloatVector capd::covrel::TripleSet::stable

◆ unstable

FloatVector capd::covrel::TripleSet::unstable

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