#include <NavSurface.h>
Public Types | |
typedef Surface::GlobalPoint | GlobalPoint |
typedef Surface::GlobalVector | GlobalVector |
typedef Surface::LocalPoint | LocalPoint |
typedef Surface::LocalVector | LocalVector |
typedef std::pair < TrajectoryStateOnSurface, double > | TSOSwithPath |
Public Member Functions | |
virtual void | addVolume (const NavVolume *vol, const Bounds *bounds, SurfaceOrientation::Side side)=0 |
NavVolumes are supposed to call this method to "register" with the NavSurface. | |
virtual const Bounds * | bounds (const NavVolume *vol)=0 |
Bounds corresponding to a NavVolume if present. | |
virtual std::pair< bool, double > | distanceAlongLine (const GlobalPoint &pos, const GlobalVector &dir) const =0 |
virtual const NavVolume * | nextVolume (const LocalPoint &point, SurfaceOrientation::Side side) const =0 |
virtual TrajectoryStateOnSurface | propagate (const Propagator &prop, const TrajectoryStateOnSurface &startingState) const =0 |
hook for double dispatch to avoid propagation to generic surface. | |
virtual TSOSwithPath | propagateWithPath (const Propagator &prop, const TrajectoryStateOnSurface &startingState) const =0 |
hook for double dispatch to avoid propagation to generic surface. | |
virtual const Surface & | surface () const =0 |
Access to actual surface. | |
GlobalPoint | toGlobal (const LocalPoint &p) const |
GlobalVector | toGlobal (const LocalVector &p) const |
LocalVector | toLocal (const GlobalVector &p) const |
LocalPoint | toLocal (const GlobalPoint &p) const |
Forwarding of part of surface interface for convenience. | |
virtual | ~NavSurface () |
Definition at line 13 of file NavSurface.h.
Definition at line 21 of file NavSurface.h.
Definition at line 22 of file NavSurface.h.
Definition at line 19 of file NavSurface.h.
Definition at line 20 of file NavSurface.h.
typedef std::pair<TrajectoryStateOnSurface,double> NavSurface::TSOSwithPath |
Definition at line 23 of file NavSurface.h.
virtual NavSurface::~NavSurface | ( | ) | [inline, virtual] |
Definition at line 25 of file NavSurface.h.
{}
virtual void NavSurface::addVolume | ( | const NavVolume * | vol, |
const Bounds * | bounds, | ||
SurfaceOrientation::Side | side | ||
) | [pure virtual] |
NavVolumes are supposed to call this method to "register" with the NavSurface.
Implemented in NavCone, NavCylinder, and NavPlane.
Referenced by NavVolume6Faces::computeBounds().
Bounds corresponding to a NavVolume if present.
Implemented in NavCone, NavCylinder, and NavPlane.
Referenced by NavVolume6Faces::computeBounds().
virtual std::pair<bool,double> NavSurface::distanceAlongLine | ( | const GlobalPoint & | pos, |
const GlobalVector & | dir | ||
) | const [pure virtual] |
Distance to surface from point pos along line dir. If the half-line does not cross the surface the returned value is (false,undefined), otherwise the returned value is (true,distance)
Implemented in NavCone, NavCylinder, and NavPlane.
virtual const NavVolume* NavSurface::nextVolume | ( | const LocalPoint & | point, |
SurfaceOrientation::Side | side | ||
) | const [pure virtual] |
Implemented in NavCone, NavCylinder, and NavPlane.
virtual TrajectoryStateOnSurface NavSurface::propagate | ( | const Propagator & | prop, |
const TrajectoryStateOnSurface & | startingState | ||
) | const [pure virtual] |
hook for double dispatch to avoid propagation to generic surface.
Implemented in NavCone, NavCylinder, and NavPlane.
virtual TSOSwithPath NavSurface::propagateWithPath | ( | const Propagator & | prop, |
const TrajectoryStateOnSurface & | startingState | ||
) | const [pure virtual] |
hook for double dispatch to avoid propagation to generic surface.
Implemented in NavCone, NavCylinder, and NavPlane.
virtual const Surface& NavSurface::surface | ( | ) | const [pure virtual] |
Access to actual surface.
Implemented in NavCone, NavCylinder, and NavPlane.
Referenced by toGlobal(), and toLocal().
GlobalVector NavSurface::toGlobal | ( | const LocalVector & | p | ) | const [inline] |
Definition at line 59 of file NavSurface.h.
References surface(), and Surface::toGlobal().
GlobalPoint NavSurface::toGlobal | ( | const LocalPoint & | p | ) | const [inline] |
Definition at line 58 of file NavSurface.h.
References surface(), and Surface::toGlobal().
LocalPoint NavSurface::toLocal | ( | const GlobalPoint & | p | ) | const [inline] |
Forwarding of part of surface interface for convenience.
Definition at line 56 of file NavSurface.h.
References surface(), and GloballyPositioned< T >::toLocal().
Referenced by NavCylinder::distanceAlongLine().
LocalVector NavSurface::toLocal | ( | const GlobalVector & | p | ) | const [inline] |
Definition at line 57 of file NavSurface.h.
References surface(), and GloballyPositioned< T >::toLocal().