34 #ifndef FGGROUNDCALLBACK_H 35 #define FGGROUNDCALLBACK_H 41 #include "simgear/structure/SGReferenced.hxx" 42 #include "simgear/structure/SGSharedPtr.hxx" 48 #define ID_GROUNDCALLBACK "$Id: FGGroundCallback.h,v 1.18 2014/11/30 12:35:32 bcoconni Exp $" 53 class FGColumnVector3;
111 {
return GetAGLevel(time, location, contact, normal, v, w); }
142 void SetTime(
double _time) { time = _time; }
148 typedef SGSharedPtr<FGGroundCallback> FGGroundCallback_ptr;
170 {
return mTerrainLevelRadius; }
174 {
return mSeaLevelRadius; }
178 double mSeaLevelRadius;
179 double mTerrainLevelRadius;
virtual double GetTerrainGeoCentRadius(double t, const FGLocation &location) const =0
Compute the local terrain radius.
void SetTerrainGeoCentRadius(double radius)
Set the local terrain radius.
This class provides callback slots to get ground specific data.
FGLocation holds an arbitrary location in the Earth centered Earth fixed reference frame (ECEF)...
virtual double GetAGLevel(const FGLocation &location, FGLocation &contact, FGColumnVector3 &normal, FGColumnVector3 &v, FGColumnVector3 &w) const
Compute the altitude above ground.
virtual void SetSeaLevelRadius(double radius)
Set the sea level radius.
void SetSeaLevelRadius(double radius)
Set the sea level radius.
double GetTerrainGeoCentRadius(double t, const FGLocation &location) const
Compute the local terrain radius.
virtual double GetTerrainGeoCentRadius(const FGLocation &location) const
Compute the local terrain radius.
virtual double GetAltitude(const FGLocation &l) const =0
Compute the altitude above sealevel.
double GetSeaLevelRadius(const FGLocation &location) const
Return the sea level radius.
This class implements a 3 element column vector.
virtual double GetSeaLevelRadius(const FGLocation &location) const =0
Return the sea level radius.
virtual double GetAGLevel(double t, const FGLocation &location, FGLocation &contact, FGColumnVector3 &normal, FGColumnVector3 &v, FGColumnVector3 &w) const =0
Compute the altitude above ground.
virtual void SetTerrainGeoCentRadius(double radius)
Set the local terrain radius.