|
Isis 3 Programmer Reference
|
1 #ifndef AbstractPlate_h
2 #define AbstractPlate_h
13 #include "NaifDskApi.h"
58 virtual QString
name()
const = 0;
79 virtual double area()
const = 0;
virtual Distance minRadius() const =0
Gets the minimum radius.
virtual Angle separationAngle(const NaifVector &raydir) const =0
Gets the separation angle.
TNT::Array1D< SpiceDouble > NaifVertex
1-D Buffer[3]
This class is designed to encapsulate the concept of a Latitude.
virtual bool hasIntercept(const NaifVertex &vertex, const NaifVector &raydir) const =0
Determines if a look direction from a point intercepts the plate.
AbstractPlate()
Empty constructor for an AbstractPlate object.
virtual QString name() const =0
Gets the name of this Plate type.
Abstract interface to a TIN plate.
virtual SurfacePoint * point(const Latitude &lat, const Longitude &lon) const =0
Determine the intercept point of a lat/lon location for the plate.
Distance measurement, usually in meters.
This class is designed to encapsulate the concept of a Longitude.
virtual bool hasPoint(const Latitude &lat, const Longitude &lon) const =0
Determines the give lat/lon point intercept the triangular plate.
virtual NaifVector normal() const =0
Gets the normal.
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.
AbstractPlate(const AbstractPlate &plate)
Copy contructor.
Defines an angle and provides unit conversions.
Container for a intercept condition.
virtual double area() const =0
Gets the area of the plate.
virtual AbstractPlate * clone() const =0
Returns a clone of the current plate.
TNT::Array1D< SpiceDouble > NaifVector
Namespace to contain type definitions of NAIF DSK fundamentals.
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,...
virtual ~AbstractPlate()
Empty destructor for an AbstractPlate object.
This class defines a body-fixed surface point.
This is free and unencumbered software released into the public domain.
AbstractPlate & operator=(const AbstractPlate &plate)
Assignment operator.