1 #ifndef AbstractPlate_h 2 #define AbstractPlate_h 72 virtual QString
name()
const = 0;
93 virtual double area()
const = 0;
This class defines a body-fixed surface point.
virtual SurfacePoint * point(const Latitude &lat, const Longitude &lon) const =0
Determine the intercept point of a lat/lon location for the plate.
Abstract interface to a TIN plate.
virtual Angle separationAngle(const NaifVector &raydir) const =0
Gets the separation angle.
virtual QString name() const =0
Gets the name of this Plate type.
virtual Distance maxRadius() const =0
Gets the maximum radius.
virtual Intercept * intercept(const NaifVertex &vertex, const NaifVector &raydir) const =0
Conpute the intercept point on a triangular plate.
virtual ~AbstractPlate()
Empty destructor for an AbstractPlate object.
virtual Distance minRadius() const =0
Gets the minimum radius.
This class is designed to encapsulate the concept of a Latitude.
Distance measurement, usually in meters.
TNT::Array1D< SpiceDouble > NaifVector
Namespace to contain type definitions of NAIF DSK fundamentals.
AbstractPlate()
Empty constructor for an AbstractPlate object.
This class is designed to encapsulate the concept of a Longitude.
TNT::Array1D< SpiceDouble > NaifVertex
1-D Buffer[3]
Container for a intercept condition.
Intercept * construct(const NaifVertex &vertex, const NaifVector &raydir, SurfacePoint *ipoint) const
Construct an intercept from a clone of this plate as well as the given vertex, direction vector...
Defines an angle and provides unit conversions.
virtual NaifVector normal() const =0
Gets the normal.
AbstractPlate & operator=(const AbstractPlate &plate)
Assignment operator.
virtual bool hasPoint(const Latitude &lat, const Longitude &lon) const =0
Determines the give lat/lon point intercept the triangular plate.
virtual double area() const =0
Gets the area of the plate.
Namespace for ISIS/Bullet specific routines.
virtual bool hasIntercept(const NaifVertex &vertex, const NaifVector &raydir) const =0
Determines if a look direction from a point intercepts the plate.
virtual AbstractPlate * clone() const =0
Returns a clone of the current plate.