OSSIM - Open Source Software Image Map
Version 1.9.0 (20180803)
|
This class handles the platform position. More...
#include <PlatformPosition.h>
Public Member Functions | |
PlatformPosition () | |
Constructor. More... | |
~PlatformPosition () | |
Destructor. More... | |
PlatformPosition (const PlatformPosition &rhs) | |
Copy constructor. More... | |
PlatformPosition (Ephemeris **data, int nbrData) | |
Constructor with initialisation. More... | |
PlatformPosition & | operator= (const PlatformPosition &rhs) |
Affectation operator. More... | |
Ephemeris * | Interpolate (JSDDateTime date) const |
This function interpolates its ephemeris to create a new ephemeris at the given date and time. More... | |
bool | getPlatformPositionAtTime (JSDDateTime time, std::vector< double > &position, std::vector< double > &speed) |
This function interpolates its ephemeris to create and extract platform's position and speed. More... | |
PlatformPosition * | Clone () const |
void | setData (Ephemeris **data, int nbrData) |
Ephemeris * | getData (int noData) const |
int | getNbrData () const |
bool | saveState (ossimKeywordlist &kwl, const char *prefix=0) const |
Method to save object state to a keyword list. More... | |
bool | loadState (const ossimKeywordlist &kwl, const char *prefix=0) |
Method to the load (recreate) the state of the object from a keyword list. More... | |
Protected Member Functions | |
void | InitData (Ephemeris **data, int nbrData) |
Internal method to initialize data structures. More... | |
void | InitAuxiliaryData () |
void | Clear () |
This function deletes all the contents of the class. More... | |
Protected Attributes | |
int | _nbrData |
Number of platform positions. More... | |
Ephemeris ** | _data |
Platform positions. More... | |
Private Attributes | |
double * | _t |
double ** | _p |
double ** | _dp |
HermiteInterpolator ** | _interpolator |
This class handles the platform position.
Definition at line 33 of file PlatformPosition.h.
ossimplugins::PlatformPosition::PlatformPosition | ( | ) |
Constructor.
Definition at line 28 of file PlatformPosition.cpp.
ossimplugins::PlatformPosition::~PlatformPosition | ( | ) |
Destructor.
Definition at line 38 of file PlatformPosition.cpp.
References Clear().
ossimplugins::PlatformPosition::PlatformPosition | ( | const PlatformPosition & | rhs | ) |
Copy constructor.
Definition at line 70 of file PlatformPosition.cpp.
References _data, _nbrData, and InitData().
ossimplugins::PlatformPosition::PlatformPosition | ( | Ephemeris ** | data, |
int | nbrData | ||
) |
Constructor with initialisation.
Definition at line 82 of file PlatformPosition.cpp.
References InitData().
|
protected |
This function deletes all the contents of the class.
Definition at line 43 of file PlatformPosition.cpp.
References _data, _dp, _interpolator, _nbrData, _p, and _t.
Referenced by loadState(), operator=(), setData(), and ~PlatformPosition().
|
inline |
Definition at line 79 of file PlatformPosition.h.
Referenced by ossimplugins::Sensor::Sensor(), and ossimplugins::ossimGeometricSarSensorModel::set_platformPosition().
Ephemeris * ossimplugins::PlatformPosition::getData | ( | int | noData | ) | const |
Definition at line 197 of file PlatformPosition.cpp.
References _data, and _nbrData.
int ossimplugins::PlatformPosition::getNbrData | ( | ) | const |
Definition at line 206 of file PlatformPosition.cpp.
References _nbrData.
bool ossimplugins::PlatformPosition::getPlatformPositionAtTime | ( | JSDDateTime | time, |
std::vector< double > & | position, | ||
std::vector< double > & | speed | ||
) |
This function interpolates its ephemeris to create and extract platform's position and speed.
date | Date and time at wich the interpolation have to be done |
Definition at line 174 of file PlatformPosition.cpp.
References ossimplugins::Ephemeris::get_position(), ossimplugins::Ephemeris::get_speed(), and Interpolate().
Referenced by ossimplugins::ossimGeometricSarSensorModel::getPlatformPositionAtLine().
|
protected |
Definition at line 98 of file PlatformPosition.cpp.
References _data, _dp, _interpolator, _nbrData, _p, _t, ossimplugins::Ephemeris::get_date(), ossimplugins::JSDDateTime::get_day0hTU(), ossimplugins::JSDDateTime::get_decimal(), ossimplugins::JulianDate::get_julianDate(), ossimplugins::Ephemeris::get_position(), ossimplugins::JSDDateTime::get_second(), and ossimplugins::Ephemeris::get_speed().
Referenced by InitData(), and loadState().
|
protected |
Internal method to initialize data structures.
Definition at line 87 of file PlatformPosition.cpp.
References _data, _nbrData, ossimplugins::Ephemeris::Clone(), and InitAuxiliaryData().
Referenced by operator=(), PlatformPosition(), and setData().
Ephemeris * ossimplugins::PlatformPosition::Interpolate | ( | JSDDateTime | date | ) | const |
This function interpolates its ephemeris to create a new ephemeris at the given date and time.
date | Date and time at wich the interpolation have to be done |
Definition at line 131 of file PlatformPosition.cpp.
References _data, _interpolator, _nbrData, ossimplugins::Ephemeris::Clone(), ossimplugins::Ephemeris::get_date(), ossimplugins::JSDDateTime::get_day0hTU(), ossimplugins::JSDDateTime::get_decimal(), ossimplugins::JulianDate::get_julianDate(), ossimplugins::JSDDateTime::get_second(), ossimplugins::HermiteInterpolator::Interpolate(), ossimplugins::Ephemeris::set_date(), ossimplugins::Ephemeris::set_position(), and ossimplugins::Ephemeris::set_speed().
Referenced by getPlatformPositionAtTime(), ossimplugins::SarSensor::ImageToWorld(), ossimplugins::ossimCosmoSkymedModel::InitRefPoint(), ossimplugins::ossimErsSarModel::InitRefPoint(), ossimplugins::ossimAlosPalsarModel::InitRefPoint(), ossimplugins::ossimRadarSat2Model::InitRefPoint(), ossimplugins::ossimEnvisatAsarModel::InitRefPoint(), ossimplugins::ossimRadarSatModel::InitRefPoint(), and ossimplugins::ossimRadarSat2Model::initRefPoint().
bool ossimplugins::PlatformPosition::loadState | ( | const ossimKeywordlist & | kwl, |
const char * | prefix = 0 |
||
) |
Method to the load (recreate) the state of the object from a keyword list.
Return true if ok or false on error.
Definition at line 236 of file PlatformPosition.cpp.
References _data, _nbrData, ossimString::chars(), Clear(), ossimKeywordlist::find(), InitAuxiliaryData(), ossimplugins::Ephemeris::loadState(), ossimString::toInt(), and ossimString::toString().
Referenced by ossimplugins::ossimGeometricSarSensorModel::loadState().
PlatformPosition & ossimplugins::PlatformPosition::operator= | ( | const PlatformPosition & | rhs | ) |
Affectation operator.
Definition at line 75 of file PlatformPosition.cpp.
References _data, _nbrData, Clear(), and InitData().
bool ossimplugins::PlatformPosition::saveState | ( | ossimKeywordlist & | kwl, |
const char * | prefix = 0 |
||
) | const |
Method to save object state to a keyword list.
kwl | Keyword list to save to. |
prefix | added to keys when saved. |
Definition at line 212 of file PlatformPosition.cpp.
References _data, _nbrData, ossimKeywordlist::add(), ossimString::chars(), ossimplugins::Ephemeris::saveState(), and ossimString::toString().
Referenced by ossimplugins::ossimGeometricSarSensorModel::saveState().
void ossimplugins::PlatformPosition::setData | ( | Ephemeris ** | data, |
int | nbrData | ||
) |
Definition at line 191 of file PlatformPosition.cpp.
References Clear(), and InitData().
Referenced by ossimplugins::ossimTerraSarProductDoc::initPlatformPosition().
|
protected |
Platform positions.
Definition at line 121 of file PlatformPosition.h.
Referenced by Clear(), getData(), InitAuxiliaryData(), InitData(), Interpolate(), loadState(), operator=(), PlatformPosition(), and saveState().
|
private |
Definition at line 131 of file PlatformPosition.h.
Referenced by Clear(), and InitAuxiliaryData().
|
private |
Definition at line 132 of file PlatformPosition.h.
Referenced by Clear(), InitAuxiliaryData(), and Interpolate().
|
protected |
Number of platform positions.
Definition at line 116 of file PlatformPosition.h.
Referenced by Clear(), getData(), getNbrData(), InitAuxiliaryData(), InitData(), Interpolate(), loadState(), operator=(), PlatformPosition(), and saveState().
|
private |
Definition at line 130 of file PlatformPosition.h.
Referenced by Clear(), and InitAuxiliaryData().
|
private |
Definition at line 129 of file PlatformPosition.h.
Referenced by Clear(), and InitAuxiliaryData().