Isis Developer Reference
|
Implementation of SensorUtilities::Shape backed by an ISIS ShapeModel. More...
#include <IsisShape.h>
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. | |
Implementation of SensorUtilities::Shape backed by an ISIS ShapeModel.
Isis::IsisShape::IsisShape | ( | ShapeModel * | shape | ) |
Create an IsisShape that wraps an ISIS ShapeModel.
|
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().