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;   
 
  112      typedef QSharedPointer<NaifDskDescriptor>  SharedNaifDskDescriptor;
 
  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;
 
 
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
 
Implementation interface API for NAIF's DSK plate model.
Definition NaifDskPlateModel.h:49
 
bool isPlateIdValid(const SpiceInt plateid) const
Determines if the plate ID is valid.
Definition NaifDskPlateModel.cpp:213
 
SpiceInt numberPlates() const
Returns the number of plates in the model.
Definition NaifDskPlateModel.cpp:86
 
QString filename() const
Returns the nane of the NAIF DSK file.
Definition NaifDskPlateModel.cpp:71
 
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
 
int size() const
Returns the number of plates in the DSK file - mostly for conformity.
Definition NaifDskPlateModel.cpp:79
 
NaifTriangle plate(SpiceInt plateid) const
Retrieve the triangular plate identified by its ID.
Definition NaifDskPlateModel.cpp:290
 
NaifDskPlateModel()
Default empty constructor.
Definition NaifDskPlateModel.cpp:44
 
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
 
bool isValid() const
Checks validity of the object.
Definition NaifDskPlateModel.cpp:64
 
SpiceInt numberVertices() const
Returns the number of vertices in the plate model.
Definition NaifDskPlateModel.cpp:94
 
virtual ~NaifDskPlateModel()
Definition NaifDskPlateModel.cpp:59
 
NaifDskPlateModel * clone() const
 
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
 
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::Array2D< SpiceDouble > NaifTriangle
3-D triangle[3][3]
Definition NaifDskApi.h:48
 
TNT::Array1D< SpiceDouble > NaifVertex
1-D Buffer[3]
Definition NaifDskApi.h:47