58 virtual QString
name()
const = 0;
79 virtual double area()
const = 0;
Abstract interface to a TIN plate.
Definition AbstractPlate.h:46
virtual Distance maxRadius() const =0
Gets the maximum radius.
virtual Angle separationAngle(const NaifVector &raydir) const =0
Gets the separation angle.
virtual NaifVector normal() const =0
Gets the normal.
virtual double area() const =0
Gets the area of the plate.
virtual Distance minRadius() const =0
Gets the minimum radius.
AbstractPlate()
Empty constructor for an AbstractPlate object.
Definition AbstractPlate.cpp:25
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,...
Definition AbstractPlate.cpp:57
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.
Definition AbstractPlate.cpp:32
virtual bool hasPoint(const Latitude &lat, const Longitude &lon) const =0
Determines the give lat/lon point intercept the triangular plate.
virtual bool hasIntercept(const NaifVertex &vertex, const NaifVector &raydir) const =0
Determines if a look direction from a point intercepts the plate.
virtual SurfacePoint * point(const Latitude &lat, const Longitude &lon) const =0
Determine the intercept point of a lat/lon location for the plate.
virtual QString name() const =0
Gets the name of this Plate type.
Definition AbstractPlate.cpp:41
virtual AbstractPlate * clone() const =0
Returns a clone of the current plate.
Defines an angle and provides unit conversions.
Definition Angle.h:45
Distance measurement, usually in meters.
Definition Distance.h:34
Container for a intercept condition.
Definition Intercept.h:36
This class is designed to encapsulate the concept of a Latitude.
Definition Latitude.h:51
This class is designed to encapsulate the concept of a Longitude.
Definition Longitude.h:40
This class defines a body-fixed surface point.
Definition SurfacePoint.h:132
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16
TNT::Array1D< SpiceDouble > NaifVector
Namespace to contain type definitions of NAIF DSK fundamentals.
Definition NaifDskApi.h:46
TNT::Array1D< SpiceDouble > NaifVertex
1-D Buffer[3]
Definition NaifDskApi.h:47