ICAROUS
All Classes Namespaces Files Functions Variables Enumerations Enumerator Macros Modules Pages
Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
larcfm::SimpleMovingPoly Class Reference

#include <SimpleMovingPoly.h>

Public Member Functions

 SimpleMovingPoly (const SimplePoly &start, const std::vector< Velocity > &vs)
 
 SimpleMovingPoly (const SimplePoly &start, const Velocity &v)
 
 SimpleMovingPoly (double b, double t)
 
 SimpleMovingPoly (double b, double t, const std::string &units)
 
 SimpleMovingPoly (const SimpleMovingPoly &p)
 
SimpleMovingPoly copy () const
 
bool addVertex (const Position &p, const Velocity &v)
 
void removeVertex (int i)
 
void setTop (double top)
 
void setBottom (double bot)
 
bool isLatLon () const
 
SimplePoly position (double dt) const
 
Velocity averageVelocity () const
 
SimpleMovingPoly linear (double dt) const
 
MovingPolygon3D getMovingPolygon (double time, const EuclideanProjection &proj)
 
MovingPolygon3D getMovingPolygon (const EuclideanProjection &proj)
 
int size () const
 
bool contains (const Position &p, double dt) const
 
std::string toString () const
 ‍**
 
std::vector< std::string > toStringList (int vertex, bool trkgsvs, int precision) const
 

Static Public Member Functions

static SimpleMovingPoly make (const MovingPolygon3D &p3, const EuclideanProjection &proj)
 
static SimpleMovingPoly make (const MovingPolygon3D &p3)
 

Public Attributes

SimplePoly poly
 
std::vector< Velocityvlist
 
bool morphingPoly
 

Detailed Description

A "stateful" version of a SimplePoly that includes velocity.

Constructor & Destructor Documentation

◆ SimpleMovingPoly() [1/3]

larcfm::SimpleMovingPoly::SimpleMovingPoly ( double  b,
double  t 
)

Constructor for a SimplePoly with predefined top and bottom altitudes.

Parameters
bBottom altitude
tTop altitude

Constructor for a SimplePoly with predefined top and bottom altitudes.

Parameters
bBottom altitude
tTop Altitude

◆ SimpleMovingPoly() [2/3]

larcfm::SimpleMovingPoly::SimpleMovingPoly ( double  b,
double  t,
const std::string &  units 
)

Constructor for a SimplePoly with predefined top and bottom altitudes.

Parameters
bBottom altitude
tTop altitude
unitsunits of altitude

◆ SimpleMovingPoly() [3/3]

larcfm::SimpleMovingPoly::SimpleMovingPoly ( const SimpleMovingPoly p)

Create a deep copy of a SimplePoly

Parameters
pSource poly.

Member Function Documentation

◆ averageVelocity()

Velocity larcfm::SimpleMovingPoly::averageVelocity ( ) const

Return the average Velocity (at time 0).

Returns
velocity

Return the average Velocity (at time 0).

◆ contains()

bool larcfm::SimpleMovingPoly::contains ( const Position p,
double  dt 
) const

Return true if point p is within the polygon at time dt from now.

Parameters
pposition
dttime increment
Returns
true, if point is in polygon

Return true if point p is within the polygon at time dt from now.

◆ getMovingPolygon()

MovingPolygon3D larcfm::SimpleMovingPoly::getMovingPolygon ( double  time,
const EuclideanProjection &  proj 
)

This will return a moving polygon that starts at a time

Parameters
timestart time
projrelevant projection
Returns
moving polygon

This will return a moving polygon that starts at point i and ends at point i+1

Parameters
i
proj
Returns

◆ make() [1/2]

SimpleMovingPoly larcfm::SimpleMovingPoly::make ( const MovingPolygon3D p3)
static

Create a SimplePoly from a Poly3D. This SimplePoly will use Euclidean coordinates.

Parameters
p3polygon
Returns
polygon

Create a SimplePoly from a Poly3D. This SimplePoly will use Euclidean coordinates.

◆ make() [2/2]

SimpleMovingPoly larcfm::SimpleMovingPoly::make ( const MovingPolygon3D p3,
const EuclideanProjection &  proj 
)
static

Create a SimplePoly from a Poly3D. This SimplePoly will use latlon coordinates.

Parameters
p3polygon
projprojection
Returns
polygon

Create a SimplePoly from a Poly3D. This SimplePoly will use latlon coordinates.

◆ position()

SimplePoly larcfm::SimpleMovingPoly::position ( double  dt) const

Return the polygon projected to be at time dt (dt = 0 returns a copy of the base polygon)

Parameters
dttime increment
Returns
polygon

Return the polygon projected to be at time dt (dt = 0 returns a copy of the base polygon)


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