Isis Developer Reference
Isis::IsisShape Class Reference

Implementation of SensorUtilities::Shape backed by an ISIS ShapeModel. More...

#include <IsisShape.h>

Inheritance diagram for Isis::IsisShape:
Inheritance graph
Collaboration diagram for Isis::IsisShape:
Collaboration graph

Public Member Functions

 IsisShape (ShapeModel *shape)
 Create an IsisShape that wraps an ISIS ShapeModel.
 
virtual SensorUtilities::Intersection intersect (const SensorUtilities::Vec &sensorPos, const SensorUtilities::Vec &lookVec, bool computeLocalNormal=true)
 Intersect the ShapeModel.
 

Detailed Description

Implementation of SensorUtilities::Shape backed by an ISIS ShapeModel.

Constructor & Destructor Documentation

◆ IsisShape()

Isis::IsisShape::IsisShape ( ShapeModel * shape)

Create an IsisShape that wraps an ISIS ShapeModel.

Member Function Documentation

◆ intersect()

SensorUtilities::Intersection Isis::IsisShape::intersect ( const SensorUtilities::Vec & sensorPos,
const SensorUtilities::Vec & lookVec,
bool computeLocalNormal = true )
virtual

Intersect the ShapeModel.

Depending on what type of ShapeModel this is wrapping, the local normal will be computed differently. Of note, DEM ShapeModels do not support local normal calculations right now, because of the extra information required by the current ISIS DEM local normal calculation requiring extra observer rays.

References Isis::ShapeModel::calculateLocalNormal(), Isis::ShapeModel::calculateSurfaceNormal(), Isis::SurfacePoint::GetX(), Isis::SurfacePoint::GetY(), Isis::SurfacePoint::GetZ(), Isis::ShapeModel::intersectSurface(), Isis::ShapeModel::isDEM(), Isis::Displacement::meters(), Isis::ShapeModel::normal(), and Isis::ShapeModel::surfaceIntersection().


The documentation for this class was generated from the following files: