67 std::vector<double> lookDirection);
void calculateSurfaceNormal()
Return the surface normal of the ellipsi=oud.
void setLocalNormalFromIntercept()
Set the normal vector to the intercept point normal.
NaifDskPlateModel m_model
Plate model to intersect.
const NaifDskPlateModel & model() const
Returns a direct reference to the DSK plate model file interface.
This class is designed to encapsulate the concept of a Latitude.
QVector< double > ellipsoidNormal()
Compute the true surface normal vector of an ellipsoid.
Distance measurement, usually in meters.
~NaifDskShape()
Destructor - cleanup is handled automagically.
This class is designed to encapsulate the concept of a Longitude.
bool isDEM() const
Indicates that this shape model is not from a DEM.
NaifDskShape()
Generic constructor sets type to a TIN.
Provides support for NAIF's Digital Shape Kernel (DSK)
Container for a intercept condition.
QScopedPointer< Intercept > m_intercept
Pointer to the shape's intercept.
void calculateLocalNormal(QVector< double * > cornerNeighborPoints)
Compute the normal for a local region of surface points.
Distance localRadius(const Latitude &lat, const Longitude &lon)
Determine DEM radius at a given lat/lon grid point.
Container for cube-like labels.
This class is used to create and store valid Isis3 targets.
Define shapes and provide utilities for Isis3 targets.
void calculateDefaultNormal()
Return the surface normal of the ellipsoid as the default.
Implementation interface API for NAIF's DSK plate model.
const Intercept * intercept() const
Returns a pointer to the current intercept.
bool intersectSurface(std::vector< double > observerPos, std::vector< double > lookDirection)
Compute a DEM intersection from and observer and look direction.