void rspfLandSatModel::lineSampleHeightToWorld(const rspfDpt& image_point, const double& height, rspfGpt& gpt) const { if (traceExec()) rspfNotify(rspfNotifyLevel_DEBUG) << "DEBUG rspfLandSatModel::lineSampleHeightToWorld: entering..." << std::endl; #if 0 if (!insideImage(image_point)) { gpt = extrapolate(image_point, height); if (traceExec()) rspfNotify(rspfNotifyLevel_DEBUG) << "DEBUG rspfLandSatModel::lineSampleHeightToWorld: returning..." << std::endl; return; } #endif rspfEcefRay imaging_ray; imagingRay(image_point, imaging_ray); //rspfEcefPoint Pecf (imaging_ray.intersectAboveEarthEllipsoid(height)); //gpt = rspfGpt(Pecf); if (m_proj==NULL) { rspfEcefPoint Pecf (imaging_ray.intersectAboveEarthEllipsoid(height)); gpt = rspfGpt(Pecf); } else { rspfEcefPoint Pecf (imaging_ray.intersectAboveEarthEllipsoid(height,m_proj->getDatum())); gpt = rspfGpt(Pecf,m_proj->getDatum()); } }
void rspfBuckeyeSensor::lineSampleHeightToWorld(const rspfDpt& image_point, const double& heightEllipsoid, rspfGpt& worldPoint) const { if (!insideImage(image_point)) { worldPoint.makeNan(); worldPoint = extrapolate(image_point, heightEllipsoid); } else { rspfEcefRay ray; imagingRay(image_point, ray); rspfEcefPoint Pecf (ray.intersectAboveEarthEllipsoid(heightEllipsoid)); worldPoint = rspfGpt(Pecf); } }
void ossimSpectraboticsRedEdgeModel::lineSampleHeightToWorld(const ossimDpt& image_point, const double& heightEllipsoid, ossimGpt& worldPoint) const { // if (!insideImage(image_point)) // { // worldPoint.makeNan(); // worldPoint = extrapolate(image_point, heightEllipsoid); // } // else { //*** // First establish imaging ray from image point: //*** ossimEcefRay ray; imagingRay(image_point, ray); ossimEcefPoint Pecf (ray.intersectAboveEarthEllipsoid(heightEllipsoid)); worldPoint = ossimGpt(Pecf); } }
void rspfApplanixEcefModel::lineSampleHeightToWorld(const rspfDpt& image_point, const double& heightEllipsoid, rspfGpt& worldPoint) const { if (!insideImage(image_point)) { worldPoint.makeNan(); // worldPoint = extrapolate(image_point, heightEllipsoid); } else { //*** // First establish imaging ray from image point: //*** rspfEcefRay ray; imagingRay(image_point, ray); rspfEcefPoint Pecf (ray.intersectAboveEarthEllipsoid(heightEllipsoid)); worldPoint = rspfGpt(Pecf); } }
void ossimBuckeyeSensor::lineSampleHeightToWorld(const ossimDpt& image_point, const double& heightEllipsoid, ossimGpt& worldPoint) const { if (traceDebug()) ossimNotify(ossimNotifyLevel_DEBUG) << "DEBUG ossimBuckeyeSensor::lineSampleHeightToWorld: entering..." << std::endl; if (!insideImage(image_point)) { worldPoint.makeNan(); } else { //*** // First establish imaging ray from image point: //*** ossimEcefRay ray; imagingRay(image_point, ray); ossimEcefPoint Pecf (ray.intersectAboveEarthEllipsoid(heightEllipsoid)); worldPoint = ossimGpt(Pecf); } if (traceDebug()) ossimNotify(ossimNotifyLevel_DEBUG) << "DEBUG ossimBuckeyeSensor::lineSampleHeightToWorld: returning..." << std::endl; }