|
Isis Developer Reference
|
Go to the documentation of this file. 1 #ifndef NaifDskPlateModel_h
2 #define NaifDskPlateModel_h
11 #include <QSharedPointer>
81 enum ErrAction { Throw,
96 class NaifDskDescriptor {
103 SpiceDLADescr m_dladsc;
105 SpiceDSKDescr m_dskdsc;
113 SharedNaifDskDescriptor m_dsk;
115 NaifDskDescriptor *openDSK(
const QString &dskfile);
116 bool verify(
const bool &test,
const QString &errmsg,
117 const ErrAction &action = Throw)
const;
118 SurfacePoint *makePoint(
const NaifVertex &v)
const;
virtual ~NaifDskPlateModel()
Definition: NaifDskPlateModel.cpp:59
TNT::Array1D< SpiceDouble > NaifVertex
1-D Buffer[3]
Definition: NaifDskApi.h:47
This class is designed to encapsulate the concept of a Latitude.
Definition: Latitude.h:51
double positiveEast(Angle::Units units=Angle::Radians) const
Get the longitude in the PositiveEast coordinate system.
Definition: Longitude.cpp:146
NaifTriangle plate(SpiceInt plateid) const
Retrieve the triangular plate identified by its ID.
Definition: NaifDskPlateModel.cpp:290
File name manipulation and expansion.
Definition: FileName.h:100
SpiceInt numberVertices() const
Returns the number of vertices in the plate model.
Definition: NaifDskPlateModel.cpp:94
SpiceInt plateIdOfIntercept(const NaifVertex &vertex, const NaifVector &raydir, NaifVertex &xpoint) const
Primary API to determine ray intercept from observer/look direction.
Definition: NaifDskPlateModel.cpp:236
static void CheckErrors(bool resetNaif=true)
This method looks for any naif errors that might have occurred.
Definition: NaifStatus.cpp:28
int size() const
Returns the number of plates in the DSK file - mostly for conformity.
Definition: NaifDskPlateModel.cpp:79
This class is designed to encapsulate the concept of a Longitude.
Definition: Longitude.h:40
Intercept * intercept(const NaifVertex &vertex, const NaifVector &raydir) const
Determine a target body intercept point from an observer and look direction.
Definition: NaifDskPlateModel.cpp:179
#define _FILEINFO_
Macro for the filename and line number.
Definition: IException.h:24
NaifDskPlateModel()
Default empty constructor.
Definition: NaifDskPlateModel.cpp:44
QString filename() const
Returns the nane of the NAIF DSK file.
Definition: NaifDskPlateModel.cpp:71
bool isValid() const
Checks validity of the object.
Definition: NaifDskPlateModel.cpp:64
TNT::Array2D< SpiceDouble > NaifTriangle
3-D triangle[3][3]
Definition: NaifDskApi.h:48
Isis exception class.
Definition: IException.h:91
bool isPlateIdValid(const SpiceInt plateid) const
Determines if the plate ID is valid.
Definition: NaifDskPlateModel.cpp:213
NaifDskPlateModel * clone() const
@ Programmer
This error is for when a programmer made an API call that was illegal.
Definition: IException.h:146
Namespace for the standard library.
bool isValid() const
This indicates whether we have a legitimate angle stored or are in an unset, or invalid,...
Definition: Angle.cpp:95
Container for a intercept condition.
Definition: Intercept.h:36
double planetocentric(Angle::Units units=Angle::Radians) const
Get the latitude in the planetocentric (universal) coordinate system.
Definition: Latitude.cpp:282
Implementation interface API for NAIF's DSK plate model.
Definition: NaifDskPlateModel.h:49
TNT::Array1D< SpiceDouble > NaifVector
Namespace to contain type definitions of NAIF DSK fundamentals.
Definition: NaifDskApi.h:46
bool validate(const NaifVertex &v)
Verifies that the given NaifVector or NaifVertex is 3 dimensional.
Definition: NaifDskApi.cpp:28
@ Kilometers
The distance is being specified in kilometers.
Definition: Displacement.h:42
SurfacePoint * point(const Latitude &lat, const Longitude &lon) const
Get surface intersection for a lat/lon grid point.
Definition: NaifDskPlateModel.cpp:121
This class defines a body-fixed surface point.
Definition: SurfacePoint.h:132
Specification for an abstract triangular plate.
Definition: TriangularPlate.h:34
@ Radians
Radians are generally used in mathematical equations, 0-2*PI is one circle, however these are more di...
Definition: Angle.h:63
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
@ User
A type of error that could only have occurred due to a mistake on the user's part (e....
Definition: IException.h:126
SpiceInt numberPlates() const
Returns the number of plates in the model.
Definition: NaifDskPlateModel.cpp:86