ScaledCSpace Class Reference

Takes an other cspace and scales its' dimensions. More...

#include <RobotComponents/components/MotionPlanning/CSpace/ScaledCSpace.h>

+ Inheritance diagram for ScaledCSpace:

Public Member Functions

CSpaceBasePtr clone (const Ice::Current &=Ice::emptyCurrent) override
 
Ice::Long getDimensionality (const Ice::Current &=Ice::emptyCurrent) const override
 
FloatRangeSeq getDimensionsBounds (const Ice::Current &=Ice::emptyCurrent) const override
 
Ice::FloatSeq getScalingFactors (const ::Ice::Current &=Ice::emptyCurrent) override
 
void initCollisionTest (const Ice::Current &=Ice::emptyCurrent) override
 Initializes the collision check.
 
bool isCollisionFree (const ::std::pair< const Ice::Float *, const Ice::Float * > &cfg, const Ice::Current &=Ice::emptyCurrent) override
 
virtual bool isCollisionFree (const Ice::Float *first, const Ice::Float *last)
 
virtual bool isCollisionFree (const VectorXf &config)
 
virtual void scaleConfig (VectorXf &config) const
 
 ScaledCSpace (const CSpaceBasePtr &cspace, const Ice::FloatSeq &scale)
 ctor.
 
virtual void scalePath (Path &path) const
 
virtual void unscaleConfig (VectorXf &config) const
 
virtual void unscalePath (Path &path) const
 
virtual void unscalePath (PathWithCost &path) const
 
virtual void unscalePath (VectorXfSeq &nodes) const
 
- Public Member Functions inherited from CSpaceAdaptor
 CSpaceAdaptor (CSpaceBasePtr originalCSpace)
 
CSpaceBasePtr getOriginalCSpace (const Ice::Current &=Ice::emptyCurrent) const override
 
- Public Member Functions inherited from CSpace
void initCollisionTest (const Ice::Current &=Ice::emptyCurrent) override
 Initializes collision checking.
 
bool isValidConfiguration (const ::std::pair< const Ice::Float *, const Ice::Float * > &config, const Ice::Current &=Ice::emptyCurrent) const override
 
virtual bool isValidConfiguration (const VectorXf &config) const
 
virtual bool usesInternalScaling ()
 

Protected Member Functions

 ScaledCSpace ()=default
 Default ctor.
 
void unscaleToBuffer (const Ice::Float *cfg, VectorXf &buffer) const
 Unscales the given configuration to a buffer.
 
- Protected Member Functions inherited from CSpaceAdaptor
 CSpaceAdaptor ()=default
 

Friends

template<class IceBaseClass, class DerivedClass>
class armarx::GenericFactory
 

Detailed Description

Takes an other cspace and scales its' dimensions.

Can be used when lage translations and rotations are planned at the same time.

Constructor & Destructor Documentation

◆ ScaledCSpace() [1/2]

ScaledCSpace ( const CSpaceBasePtr & cspace,
const Ice::FloatSeq & scale )

ctor.

Parameters
cspaceThe cspace to scale.
scaleThe dimensions' scaling factors.

◆ ScaledCSpace() [2/2]

ScaledCSpace ( )
protecteddefault

Default ctor.

Used for ice factories.

Member Function Documentation

◆ clone()

CSpaceBasePtr clone ( const Ice::Current & = Ice::emptyCurrent)
overridevirtual
Returns
A clone of this object.

Implements CSpace.

◆ getDimensionality()

Ice::Long getDimensionality ( const Ice::Current & = Ice::emptyCurrent) const
inlineoverride
Returns
The cspace's dimensionality.

◆ getDimensionsBounds()

FloatRangeSeq getDimensionsBounds ( const Ice::Current & = Ice::emptyCurrent) const
override
Returns
The cspace's dimensions.

◆ getScalingFactors()

Ice::FloatSeq getScalingFactors ( const ::Ice::Current & = Ice::emptyCurrent)
inlineoverride
Returns
The dimensions' scaling factors.

◆ initCollisionTest()

void initCollisionTest ( const Ice::Current & = Ice::emptyCurrent)
inlineoverride

Initializes the collision check.

◆ isCollisionFree() [1/3]

bool isCollisionFree ( const ::std::pair< const Ice::Float *, const Ice::Float * > & cfg,
const Ice::Current & = Ice::emptyCurrent )
overridevirtual
Parameters
cfgThe configuration to check.
Returns
Checks whether the given configuration is collision free.

Implements CSpace.

◆ isCollisionFree() [2/3]

virtual bool isCollisionFree ( const Ice::Float * first,
const Ice::Float * last )
inlinevirtual
Parameters
firstThe configuration's first element.
lastThe configuration's last element.
Returns
Whether the given configuration [first,last) is collision free.

Reimplemented from CSpace.

◆ isCollisionFree() [3/3]

virtual bool isCollisionFree ( const VectorXf & config)
inlinevirtual
Parameters
configThe config to check. (as armarx::VectorXf)
Returns
Whether the given configuration is collision free.

Reimplemented from CSpace.

◆ scaleConfig()

void scaleConfig ( VectorXf & config) const
virtual

◆ scalePath()

void scalePath ( Path & path) const
virtual

◆ unscaleConfig()

void unscaleConfig ( VectorXf & config) const
virtual
Parameters
cfgThe configuration.
Returns
Returns the unscaled version of the configuration.

◆ unscalePath() [1/3]

void unscalePath ( Path & path) const
virtual

◆ unscalePath() [2/3]

void unscalePath ( PathWithCost & path) const
virtual

◆ unscalePath() [3/3]

void unscalePath ( VectorXfSeq & nodes) const
virtual

◆ unscaleToBuffer()

void unscaleToBuffer ( const Ice::Float * cfg,
VectorXf & buffer ) const
protected

Unscales the given configuration to a buffer.

Parameters
cfgThe scaled configuration.
bufferThe buffer to fill.

Friends And Related Symbol Documentation

◆ armarx::GenericFactory

template<class IceBaseClass, class DerivedClass>
friend class armarx::GenericFactory
friend

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