OSSIM - Open Source Software Image Map
Version 1.9.0 (20180803)
|
#include <ossimMapProjection.h>
Public Member Functions | |
ossimMapProjection (const ossimEllipsoid &ellipsoid=ossimEllipsoid(), const ossimGpt &origin=ossimGpt()) | |
ossimMapProjection (const ossimMapProjection &src) | |
virtual ossimGpt | origin () const |
virtual ossimDpt | forward (const ossimGpt &worldPoint) const =0 |
All map projections will convert the world coordinate to an easting northing (Meters). More... | |
virtual ossimGpt | inverse (const ossimDpt &projectedPoint) const =0 |
Will take a point in meters and convert it to ground. More... | |
virtual ossimDpt | worldToLineSample (const ossimGpt &worldPoint) const |
virtual void | worldToLineSample (const ossimGpt &worldPoint, ossimDpt &lineSample) const |
virtual ossimGpt | lineSampleToWorld (const ossimDpt &projectedPoint) const |
virtual void | lineSampleToWorld (const ossimDpt &projectedPoint, ossimGpt &gpt) const |
virtual void | lineSampleHeightToWorld (const ossimDpt &lineSampPt, const double &heightAboveEllipsoid, ossimGpt &worldPt) const |
This is the pure virtual that projects the image point to the given elevation above ellipsoid, thereby bypassing reference to a DEM. More... | |
virtual void | lineSampleToEastingNorthing (const ossimDpt &liineSample, ossimDpt &eastingNorthing) const |
virtual void | eastingNorthingToLineSample (const ossimDpt &eastingNorthing, ossimDpt &lineSample) const |
virtual void | eastingNorthingToWorld (const ossimDpt &eastingNorthing, ossimGpt &worldPt) const |
virtual double | getFalseEasting () const |
virtual double | getFalseNorthing () const |
virtual double | getStandardParallel1 () const |
Derived classes should implement as needed. More... | |
virtual double | getStandardParallel2 () const |
Derived classes should implement as needed. More... | |
virtual void | update () |
virtual void | setPcsCode (ossim_uint32 pcsCode) |
virtual ossim_uint32 | getPcsCode () const |
Returns the EPSG PCS code or 32767 if the projection is a custom (non-EPSG) projection. More... | |
virtual ossimString | getProjectionName () const |
Returns the projection name. More... | |
virtual double | getA () const |
ACCESS METHODS: More... | |
virtual double | getB () const |
virtual double | getF () const |
virtual ossimDpt | getMetersPerPixel () const |
virtual const ossimDpt & | getDecimalDegreesPerPixel () const |
Returns decimal degrees per pixel as an ossimDpt with "x" representing longitude and "y" representing latitude. More... | |
virtual const ossimDpt & | getUlEastingNorthing () const |
virtual const ossimGpt & | getUlGpt () const |
virtual const ossimDatum * | getDatum () const |
const ossimEllipsoid & | getEllipsoid () const |
const ossimGpt & | getOrigin () const |
virtual bool | isGeographic () const |
virtual void | applyScale (const ossimDpt &scale, bool recenterTiePoint) |
Applies scale to theDeltaLonPerPixel, theDeltaLatPerPixel and theMetersPerPixel data members (eg: theDeltaLonPerPixel *= scale.x). More... | |
virtual void | setEllipsoid (const ossimEllipsoid &ellipsoid) |
SET METHODS: More... | |
virtual void | setAB (double a, double b) |
virtual void | setDatum (const ossimDatum *datum) |
Sets theDatum to datum. More... | |
virtual void | setOrigin (const ossimGpt &origin) |
Sets theOrigin to origin. More... | |
virtual void | setMetersPerPixel (const ossimDpt &gsd) |
virtual void | setDecimalDegreesPerPixel (const ossimDpt &gsd) |
virtual void | setUlTiePoints (const ossimGpt &gpt) |
virtual void | setUlTiePoints (const ossimDpt &eastingNorthing) |
virtual void | setUlEastingNorthing (const ossimDpt &ulEastingNorthing) |
virtual void | setUlGpt (const ossimGpt &ulGpt) |
virtual void | assign (const ossimProjection &aProjection) |
virtual bool | saveState (ossimKeywordlist &kwl, const char *prefix=0) const |
Method to save the state of an object to a keyword list. More... | |
virtual bool | loadState (const ossimKeywordlist &kwl, const char *prefix=0) |
Method to the load (recreate) the state of an object from a keyword list. More... | |
virtual std::ostream & | print (std::ostream &out) const |
Prints data members to stream. More... | |
virtual bool | operator== (const ossimProjection &projection) const |
Compares this to arg projection and returns TRUE if the same. More... | |
virtual void | computeDegreesPerPixel () |
Computes the approximate resolution in degrees/pixel. More... | |
virtual void | computeMetersPerPixel () |
This will go from the ground point and give you an approximate meters per pixel. More... | |
void | setMatrix (double rotation, const ossimDpt &scale, const ossimDpt &translation) |
void | setMatrixScale (const ossimDpt &scale) |
void | setMatrixRotation (double rotation) |
void | setMatrixTranslation (const ossimDpt &translation) |
void | snapTiePointTo (ossim_float64 multiple, ossimUnitType unitType) |
Utility method to snap the tie point to some multiple. More... | |
void | snapTiePointToOrigin () |
void | setElevationLookupFlag (bool flag) |
bool | getElevationLookupFlag () const |
ossimUnitType | getModelTransformUnitType () const |
void | setModelTransformUnitType (ossimUnitType unit) |
bool | hasModelTransform () const |
virtual bool | isAffectedByElevation () const |
Implementation of pure virtual ossimProjection::isAffectedByElevation method. More... | |
void | setProjectionUnits (ossimUnitType units) |
ossimUnitType | getProjectionUnits () const |
OSSIM considers all map projection coordinates (including false eastings and northings) to be in meters. More... | |
virtual bool | isEqualTo (const ossimObject &obj, ossimCompareType compareType=OSSIM_COMPARE_FULL) const |
![]() | |
ossimProjection () | |
virtual | ~ossimProjection () |
virtual ossimObject * | dup () const =0 |
virtual void | getRoundTripError (const ossimDpt &imagePoint, ossimDpt &errorResult) const |
virtual void | getRoundTripError (const ossimGpt &groundPoint, ossimDpt &errorResult) const |
virtual void | getGroundClipPoints (ossimGeoPolygon &gpts) const |
virtual bool | operator!= (const ossimProjection &projection) const |
![]() | |
ossimObject () | |
virtual | ~ossimObject () |
virtual ossimString | getShortName () const |
virtual ossimString | getLongName () const |
virtual ossimString | getDescription () const |
virtual ossimString | getClassName () const |
virtual RTTItypeid | getType () const |
virtual bool | canCastTo (ossimObject *obj) const |
virtual bool | canCastTo (const RTTItypeid &id) const |
virtual bool | canCastTo (const ossimString &parentClassName) const |
virtual void | accept (ossimVisitor &visitor) |
![]() | |
ossimReferenced () | |
ossimReferenced (const ossimReferenced &) | |
ossimReferenced & | operator= (const ossimReferenced &) |
void | ref () const |
increment the reference count by one, indicating that this object has another pointer which is referencing it. More... | |
void | unref () const |
decrement the reference count by one, indicating that a pointer to this object is referencing it. More... | |
void | unref_nodelete () const |
decrement the reference count by one, indicating that a pointer to this object is referencing it. More... | |
int | referenceCount () const |
![]() | |
ossimErrorStatusInterface () | |
virtual | ~ossimErrorStatusInterface () |
virtual ossimErrorCode | getErrorStatus () const |
virtual ossimString | getErrorStatusString () const |
virtual void | setErrorStatus (ossimErrorCode error_status) const |
virtual void | setErrorStatus () const |
virtual void | clearErrorStatus () const |
bool | hasError () const |
Protected Member Functions | |
virtual | ~ossimMapProjection () |
void | updateFromTransform () |
![]() | |
virtual | ~ossimReferenced () |
Protected Attributes | |
ossimEllipsoid | theEllipsoid |
This method verifies that the projection parameters match the current pcs code. More... | |
ossimGpt | theOrigin |
const ossimDatum * | theDatum |
This is only set if we want to have built in datum shifting. More... | |
ossimDpt | theMetersPerPixel |
Holds the number of meters per pixel. More... | |
ossimDpt | theDegreesPerPixel |
Hold the decimal degrees per pixel. More... | |
ossimGpt | theUlGpt |
Hold tie point in decimal degrees. More... | |
ossimDpt | theUlEastingNorthing |
Hold tie point as easting northing. More... | |
ossimDpt | theFalseEastingNorthing |
Hold the false easting northing. More... | |
ossim_uint32 | thePcsCode |
Projection Coordinate System(PCS) code. More... | |
bool | theElevationLookupFlag |
ossimMatrix4x4 | theModelTransform |
ossimMatrix4x4 | theInverseModelTransform |
ossimUnitType | theModelTransformUnitType |
ossimUnitType | theProjectionUnits |
Linear units of the projection as indicated in the projection's specification: More... | |
![]() | |
ossimErrorCode | theErrorStatus |
Definition at line 31 of file ossimMapProjection.h.
ossimMapProjection::ossimMapProjection | ( | const ossimEllipsoid & | ellipsoid = ossimEllipsoid() , |
const ossimGpt & | origin = ossimGpt() |
||
) |
Definition at line 40 of file ossimMapProjection.cpp.
References ossimDpt::makeNan(), theDegreesPerPixel, theMetersPerPixel, theOrigin, theUlEastingNorthing, and theUlGpt.
ossimMapProjection::ossimMapProjection | ( | const ossimMapProjection & | src | ) |
Definition at line 61 of file ossimMapProjection.cpp.
|
protectedvirtual |
Definition at line 80 of file ossimMapProjection.cpp.
|
virtual |
Applies scale to theDeltaLonPerPixel, theDeltaLatPerPixel and theMetersPerPixel data members (eg: theDeltaLonPerPixel *= scale.x).
scale | Multiplier to be applied to theDeltaLonPerPixel, theDeltaLatPerPixel and theMetersPerPixel |
recenterTiePoint | If true the will adjust the tie point by shifting the original tie to the upper left corner, applying scale, then shifting back by half of either the new theDeltaLat/lon or theMetersPerPixel depending on if projection isGeographic. |
Definition at line 340 of file ossimMapProjection.cpp.
References ossimMatrix4x4::getData(), getUlEastingNorthing(), getUlGpt(), ossimMatrix4x4::i(), isGeographic(), ossimDpt::lat, ossimGpt::lat, ossimDpt::lon, ossimGpt::lon, OSSIM_UNIT_UNKNOWN, setUlTiePoints(), theDegreesPerPixel, theInverseModelTransform, theMetersPerPixel, theModelTransform, theModelTransformUnitType, updateFromTransform(), ossimDpt::x, and ossimDpt::y.
Referenced by ossimImageGeometry::applyScale(), ossimGpkgWriter::applyScaleToProjection(), ossimIgen::initThumbnailProjection(), ossimRLevelFilter::updateGeometry(), and ossimScaleFilter::updateGeometry().
|
virtual |
Definition at line 214 of file ossimMapProjection.cpp.
References loadState(), and ossimProjection::saveState().
|
virtual |
Computes the approximate resolution in degrees/pixel.
Definition at line 1427 of file ossimMapProjection.cpp.
References forward(), inverse(), ossimDpt::lat, ossimGpt::latd(), ossimDpt::lon, ossimGpt::lond(), theDegreesPerPixel, theMetersPerPixel, theOrigin, ossimDpt::x, and ossimDpt::y.
Referenced by ossimLlxyProjection::loadState(), ossimLlxyProjection::setMetersPerPixel(), setMetersPerPixel(), update(), and updateFromTransform().
|
virtual |
This will go from the ground point and give you an approximate meters per pixel.
the Delta Lat and delta lon will be in degrees.
Definition at line 1454 of file ossimMapProjection.cpp.
References forward(), ossimDpt::lat, ossimGpt::latd(), ossimDpt::lon, ossimGpt::lond(), ossimGpt::metersPerDegree(), theDegreesPerPixel, theMetersPerPixel, theOrigin, ossimDpt::x, and ossimDpt::y.
Referenced by ossimLlxyProjection::loadState(), ossimLlxyProjection::ossimLlxyProjection(), setDecimalDegreesPerPixel(), update(), and updateFromTransform().
|
virtual |
Definition at line 751 of file ossimMapProjection.cpp.
References ossimDpt::hasNans(), ossimDpt::isNan(), ossimDpt::makeNan(), theMetersPerPixel, theUlEastingNorthing, ossimDpt::x, and ossimDpt::y.
Referenced by ossimMapCompositionSource::addMeterGridLabels(), ossimMapCompositionSource::addMeterGridLines(), ossimMapCompositionSource::addMeterGridReseaux(), eastingNorthingToWorld(), and ossimEastingNorthingCutter::transformVertices().
|
virtual |
Definition at line 738 of file ossimMapProjection.cpp.
References eastingNorthingToLineSample(), and lineSampleToWorld().
All map projections will convert the world coordinate to an easting northing (Meters).
Reimplemented from ossimProjection.
Implemented in ossimAlbersProjection, ossimLambertConformalConicProjection, ossimSpaceObliqueMercatorProjection, ossimEquDistCylProjection, ossimObliqueMercatorProjection, ossimAzimEquDistProjection, ossimLlxyProjection, ossimOrthoGraphicProjection, ossimSinusoidalProjection, ossimMercatorProjection, ossimPolyconicProjection, ossimStereographicProjection, ossimTransCylEquAreaProjection, ossimCylEquAreaProjection, ossimMillerProjection, ossimMollweidProjection, ossimVanDerGrintenProjection, ossimEckert4Projection, ossimGnomonicProjection, ossimPolarStereoProjection, ossimTransMercatorProjection, ossimUtmProjection, ossimEckert6Projection, ossimBonneProjection, ossimCassiniProjection, ossimNewZealandMapGridProjection, ossimUpsProjection, ossimCadrgProjection, ossimBngProjection, and ossimGoogleProjection.
Referenced by ossimGeoPdfReader::computeBoundingRect(), computeDegreesPerPixel(), computeMetersPerPixel(), ossimGmlSupportData::getMapOrigin(), setUlTiePoints(), snapTiePointTo(), snapTiePointToOrigin(), update(), and worldToLineSample().
|
virtual |
ACCESS METHODS:
Definition at line 119 of file ossimMapProjection.cpp.
References ossimEllipsoid::getA(), and theEllipsoid.
|
virtual |
Definition at line 124 of file ossimMapProjection.cpp.
References ossimEllipsoid::getB(), and theEllipsoid.
|
virtual |
Definition at line 159 of file ossimMapProjection.cpp.
References theDatum.
Referenced by ossimEpsgProjectionDatabase::findProjectionCode(), ossimEpsgProjectionDatabase::getCodeFromUtmProj(), ossimLasReader::getImageGeometry(), ossimPdfWriter::getLgiDictDatum(), ossimPdfWriter::getLgiDictDescription(), ossimGpkgSpatialRefSysRecord::init(), ossimLasReader::initProjection(), ossimPointCloudGeometry::ossimPointCloudGeometry(), ossimGeoTiff::parseProjection(), ossimGeoTiff::writeTags(), and ossimWriter::writeTiffTags().
|
virtual |
Returns decimal degrees per pixel as an ossimDpt with "x" representing longitude and "y" representing latitude.
Definition at line 139 of file ossimMapProjection.cpp.
References theDegreesPerPixel.
Referenced by ossimNitfWriterBase::addGeolobTag(), ossimMapProjectionInfo::getDecimalDegreesPerPixel(), ossimImageGeometry::getDegreesPerPixel(), ossimGpkgWriter::getGsd(), ossimImageGeometry::getTiePoint(), ossimRangeDomeTileSource::initialize(), ossimTilingRect::initializeBase(), ossimImageViewProjectionTransform::initializeViewSize(), ossimLasReader::initProjection(), ossimTiledElevationDatabase::isCompatible(), ossimTilingRect::next(), ossimTilingPoly::parseShpFile(), ossimGdalOgrVectorAnnotation::verifyViewParams(), ossimGdalWriter::writeProjectionInfo(), and ossimWriter::writeTiffTags().
bool ossimMapProjection::getElevationLookupFlag | ( | ) | const |
Definition at line 1694 of file ossimMapProjection.cpp.
References theElevationLookupFlag.
|
inline |
Definition at line 130 of file ossimMapProjection.h.
|
virtual |
Definition at line 129 of file ossimMapProjection.cpp.
References ossimEllipsoid::getFlattening(), and theEllipsoid.
|
virtual |
Reimplemented in ossimUtmProjection, ossimObliqueMercatorProjection, ossimEquDistCylProjection, ossimMercatorProjection, ossimTransCylEquAreaProjection, ossimTransMercatorProjection, ossimSinusoidalProjection, ossimVanDerGrintenProjection, ossimMillerProjection, ossimMollweidProjection, ossimOrthoGraphicProjection, ossimPolyconicProjection, ossimGnomonicProjection, ossimStereographicProjection, ossimCylEquAreaProjection, ossimPolarStereoProjection, ossimEckert4Projection, ossimBonneProjection, ossimEckert6Projection, ossimCassiniProjection, ossimNewZealandMapGridProjection, ossimUpsProjection, and ossimAzimEquDistProjection.
Definition at line 1577 of file ossimMapProjection.cpp.
References theFalseEastingNorthing, and ossimDpt::x.
Referenced by ossimStatePlaneProjectionInfo::matchesProjection(), ossimGeoTiff::parseProjection(), snapTiePointTo(), snapTiePointToOrigin(), and ossimGeoTiff::writeTags().
|
virtual |
Reimplemented in ossimUtmProjection, ossimObliqueMercatorProjection, ossimEquDistCylProjection, ossimMercatorProjection, ossimTransCylEquAreaProjection, ossimTransMercatorProjection, ossimSinusoidalProjection, ossimVanDerGrintenProjection, ossimMillerProjection, ossimMollweidProjection, ossimOrthoGraphicProjection, ossimPolyconicProjection, ossimGnomonicProjection, ossimStereographicProjection, ossimCylEquAreaProjection, ossimPolarStereoProjection, ossimEckert4Projection, ossimBonneProjection, ossimEckert6Projection, ossimCassiniProjection, ossimNewZealandMapGridProjection, ossimUpsProjection, and ossimAzimEquDistProjection.
Definition at line 1582 of file ossimMapProjection.cpp.
References theFalseEastingNorthing, and ossimDpt::y.
Referenced by ossimStatePlaneProjectionInfo::matchesProjection(), ossimGeoTiff::parseProjection(), snapTiePointTo(), snapTiePointToOrigin(), and ossimGeoTiff::writeTags().
|
virtual |
ACCESS METHODS:
Implements ossimProjection.
Definition at line 134 of file ossimMapProjection.cpp.
References theMetersPerPixel.
Referenced by ossimGpkgWriter::getGsd(), ossimMapProjectionInfo::getMetersPerPixel(), ossimAdjMapModel::getMetersPerPixel(), ossimImageGeometry::getTiePoint(), ossimTilingRect::initializeBase(), ossimAdjMapModel::initializeFromMap(), ossimLasReader::initProjection(), ossimTiledElevationDatabase::isCompatible(), ossimTilingRect::next(), ossimTilingPoly::parseShpFile(), ossimEquDistCylProjection::setOrigin(), ossimGdalOgrVectorAnnotation::verifyViewParams(), ossimGdalWriter::writeProjectionInfo(), and ossimWriter::writeTiffTags().
|
inline |
Definition at line 255 of file ossimMapProjection.h.
const ossimGpt & ossimMapProjection::getOrigin | ( | ) | const |
Definition at line 154 of file ossimMapProjection.cpp.
References theOrigin.
Referenced by ossimGpkgWriter::getProjectionDimensionsInMeters(), ossimGpkgWriter::initializeProjectionRect(), and ossimNitfProjectionFactory::makeEuiDistant().
|
virtual |
Returns the EPSG PCS code or 32767 if the projection is a custom (non-EPSG) projection.
Reimplemented in ossimUtmProjection.
Definition at line 94 of file ossimMapProjection.cpp.
References ossimEpsgProjectionDatabase::findProjectionCode(), ossimEpsgProjectionDatabase::instance(), and thePcsCode.
Referenced by ossimGpkgWriter::addLevels(), ossimPdfWriter::getEpsgCode(), ossimTiffInfo::getPcsCode(), ossimGpkgWriter::getProjectionDimensionsInMeters(), ossimGpkgSpatialRefSysRecord::init(), ossimGmlSupportData::initialize(), ossimGpkgWriter::initializeProjectionRect(), ossimGeoTiff::parseProjection(), saveState(), ossimGdalWriter::writeProjectionInfo(), ossimGeoTiff::writeTags(), and ossimWriter::writeTiffTags().
|
virtual |
Returns the projection name.
Reimplemented in ossimCadrgProjection.
Definition at line 114 of file ossimMapProjection.cpp.
References ossimObject::getClassName().
Referenced by ossimGeoTiff::parseProjection(), ossimMapProjectionInfo::print(), and ossimGdalWriter::writeProjectionInfo().
|
inline |
OSSIM considers all map projection coordinates (including false eastings and northings) to be in meters.
However, some standard projection specifications (cf EPSG spec) indicate coordinates in feet (US and Intl). Since the methods forward() and inverse() always deal in meters, the user of this projection may need to convert their map coordinates to meters prior to calling inverse() (and after calling forward() if the coordinates need to be in the original unit. This class keeps track of the original units so that a user can query and convert the map point coordinates to meters as needed.
Definition at line 286 of file ossimMapProjection.h.
Referenced by ossimPointCloudGeometry::convertPos(), ossimGeoTiff::getPcsUnitType(), and ossimTiffWriter::getPcsUnitType().
|
virtual |
Derived classes should implement as needed.
This implementation returns 0.0.
Reimplemented in ossimAlbersProjection, and ossimLambertConformalConicProjection.
Definition at line 1587 of file ossimMapProjection.cpp.
Referenced by ossimGeoTiff::parseProjection().
|
virtual |
Derived classes should implement as needed.
This implementation returns 0.0.
Reimplemented in ossimAlbersProjection, and ossimLambertConformalConicProjection.
Definition at line 1592 of file ossimMapProjection.cpp.
Referenced by ossimGeoTiff::parseProjection().
|
virtual |
Definition at line 144 of file ossimMapProjection.cpp.
References theUlEastingNorthing.
Referenced by applyScale().
|
virtual |
Definition at line 149 of file ossimMapProjection.cpp.
References theUlGpt.
Referenced by ossimNitfWriterBase::addGeolobTag(), applyScale(), and ossimGdalOgrVectorAnnotation::verifyViewParams().
|
inline |
Definition at line 263 of file ossimMapProjection.h.
References OSSIM_UNIT_UNKNOWN.
Referenced by operator==(), update(), and updateFromTransform().
Will take a point in meters and convert it to ground.
Reimplemented from ossimProjection.
Implemented in ossimAlbersProjection, ossimSpaceObliqueMercatorProjection, ossimLambertConformalConicProjection, ossimEquDistCylProjection, ossimObliqueMercatorProjection, ossimLlxyProjection, ossimAzimEquDistProjection, ossimOrthoGraphicProjection, ossimCylEquAreaProjection, ossimSinusoidalProjection, ossimEckert4Projection, ossimMercatorProjection, ossimPolyconicProjection, ossimStereographicProjection, ossimTransCylEquAreaProjection, ossimMillerProjection, ossimMollweidProjection, ossimVanDerGrintenProjection, ossimBonneProjection, ossimCassiniProjection, ossimGnomonicProjection, ossimPolarStereoProjection, ossimTransMercatorProjection, ossimUtmProjection, ossimEckert6Projection, ossimNewZealandMapGridProjection, ossimUpsProjection, ossimGoogleProjection, ossimCadrgProjection, and ossimBngProjection.
Referenced by computeDegreesPerPixel(), ossimChipProcTool::getChip(), ossimMapProjectionInfo::initializeMembers(), ossimSonomaSensor::intersectRay(), lineSampleHeightToWorld(), ossimGdalOgrVectorAnnotation::loadLineString(), ossimGdalOgrVectorAnnotation::loadMultiLineString(), ossimGdalOgrVectorAnnotation::loadMultiPoint(), ossimGdalOgrVectorAnnotation::loadMultiPolygon(), ossimGdalOgrVectorAnnotation::loadPoint(), ossimGdalOgrVectorAnnotation::loadPolygon(), setUlTiePoints(), snapTiePointTo(), snapTiePointToOrigin(), and update().
|
inlinevirtual |
Implementation of pure virtual ossimProjection::isAffectedByElevation method.
Implements ossimProjection.
Definition at line 273 of file ossimMapProjection.h.
|
virtual |
Reimplemented from ossimProjection.
Definition at line 1537 of file ossimMapProjection.cpp.
References ossimDatum::isEqualTo(), ossimProjection::isEqualTo(), ossimDpt::isEqualTo(), ossimEllipsoid::isEqualTo(), ossimMatrix4x4::isEqualTo(), ossimGpt::isEqualTo(), OSSIM_COMPARE_FULL, theDatum, theDegreesPerPixel, theElevationLookupFlag, theEllipsoid, theFalseEastingNorthing, theInverseModelTransform, theMetersPerPixel, theModelTransform, theModelTransformUnitType, theOrigin, thePcsCode, theProjectionUnits, theUlEastingNorthing, and theUlGpt.
|
virtual |
Reimplemented in ossimEquDistCylProjection, and ossimLlxyProjection.
Definition at line 164 of file ossimMapProjection.cpp.
Referenced by ossimNitfWriterBase::addGeolobTag(), applyScale(), ossimGeoPdfReader::computeBoundingRect(), ossimGmlSupportData::configureGmljp2V2(), ossimTilingRect::getConvertedDistance(), ossimTiling::getConvertedTilingDistance(), ossimTiling::getDeltaPerPixel(), ossimMapProjectionInfo::getGeom(), ossimMG4LidarReader::getGeoProjection(), ossimGpkgWriter::getGsd(), ossimLasReader::getImageGeometry(), ossimPdfWriter::getLgiDictCtm(), ossimPdfWriter::getLgiDictProjectionType(), ossimGpkgTileEntry::getNewMapProjection(), ossimGpkgWriter::getNewOutputProjection(), ossimTilingRect::getPaddingSize(), ossimFgdcXmlDoc::getProjection(), ossimImageGeometry::getTiePoint(), ossimGpkgWriter::getZoomLevels(), ossimTilingRect::initializeBase(), ossimAuxXmlSupportData::initializeProjection(), ossimGpkgWriter::initializeRect(), ossimLasReader::initProjection(), ossimLasReader::initUnits(), ossimTiledElevationDatabase::isCompatible(), lineSampleHeightToWorld(), ossimTilingRect::next(), ossimTiling::next(), operator==(), ossimPointCloudGeometry::ossimPointCloudGeometry(), ossimGeoTiff::parseProjection(), ossimTilingPoly::parseShpFile(), print(), saveState(), ossimLasReader::setGsd(), ossimGpkgWriter::setProjectionTie(), snapTiePointTo(), snapTiePointToOrigin(), update(), ossimTiling::validate(), ossimGdalOgrVectorAnnotation::verifyViewParams(), worldToLineSample(), ossimFgdcFileWriter::writeFile(), ossimGdalWriter::writeProjectionInfo(), ossimGeoTiff::writeTags(), and ossimWriter::writeTiffTags().
|
virtual |
This is the pure virtual that projects the image point to the given elevation above ellipsoid, thereby bypassing reference to a DEM.
Useful for projections that are sensitive to elevation.
Implements ossimProjection.
Reimplemented in ossimEquDistCylProjection.
Definition at line 565 of file ossimMapProjection.cpp.
References ossimGpt::clampLat(), ossimGpt::clampLon(), ossimGpt::datum(), ossimMatrix4x4::getData(), ossimElevManager::getHeightAboveEllipsoid(), ossimUnitConversionTool::getValue(), ossimDpt::hasNans(), ossimGpt::hgt, ossimElevManager::instance(), inverse(), isGeographic(), ossimGpt::isLatNan(), ossimGpt::isLonNan(), ossimDpt::lat, ossimGpt::latd(), ossimDpt::line, ossimDpt::lon, ossimGpt::lond(), ossimGpt::makeNan(), OSSIM_DEGREES, OSSIM_METERS, OSSIM_MINUTES, OSSIM_RADIANS, OSSIM_SECONDS, OSSIM_UNIT_UNKNOWN, ossimDpt::samp, ossimUnitConversionTool::setValue(), theDatum, theDegreesPerPixel, theElevationLookupFlag, theMetersPerPixel, theModelTransform, theModelTransformUnitType, theUlEastingNorthing, theUlGpt, ossimDpt::x, and ossimDpt::y.
Referenced by ossimEquDistCylProjection::lineSampleHeightToWorld(), ossimAdjMapModel::lineSampleHeightToWorld(), and lineSampleToWorld().
|
virtual |
Definition at line 700 of file ossimMapProjection.cpp.
References ossimDpt::hasNans(), ossimDpt::makeNan(), theMetersPerPixel, theUlEastingNorthing, ossimDpt::x, and ossimDpt::y.
Referenced by ossimMapCompositionSource::addMeterGridLabels(), ossimMapCompositionSource::addMeterGridLines(), ossimMapCompositionSource::addMeterGridReseaux(), ossimImageGeometry::getTiePoint(), ossimMapProjectionInfo::initializeMembers(), ossimGpkgWriter::initializeRect(), ossimGdalWriter::writeProjectionInfo(), and ossimWriter::writeTiffTags().
Reimplemented in ossimCadrgProjection.
Definition at line 412 of file ossimMapProjection.cpp.
Referenced by ossimMapCompositionSource::addGeographicBottomGridLabels(), ossimMapCompositionSource::addGeographicGridLines(), ossimMapCompositionSource::addGeographicGridReseaux(), ossimMapCompositionSource::addGeographicLeftGridLabels(), ossimMapCompositionSource::addGeographicRightGridLabels(), eastingNorthingToWorld(), ossimKmlSuperOverlayWriter::generateChildKml(), ossimTilingRect::initializeBase(), ossimMapProjectionInfo::initializeMembers(), ossimGpkgWriter::initializeRect(), updateFromTransform(), ossimGdalWriter::writeProjectionInfo(), and ossimWriter::writeTiffTags().
|
virtual |
METHOD: lineSampleToWorld() Performs the inverse projection from line, sample to ground (world):
Implements ossimProjection.
Reimplemented in ossimLlxyProjection, and ossimCadrgProjection.
Definition at line 682 of file ossimMapProjection.cpp.
References lineSampleHeightToWorld(), and ossim::nan().
|
virtual |
Method to the load (recreate) the state of an object from a keyword list.
Return true if ok or false on error.
Reimplemented from ossimProjection.
Reimplemented in ossimAlbersProjection, ossimLambertConformalConicProjection, ossimEquDistCylProjection, ossimLlxyProjection, ossimObliqueMercatorProjection, ossimMercatorProjection, ossimAzimEquDistProjection, ossimTransCylEquAreaProjection, ossimTransMercatorProjection, ossimCylEquAreaProjection, ossimEckert6Projection, ossimSinusoidalProjection, ossimEckert4Projection, ossimVanDerGrintenProjection, ossimBonneProjection, ossimMollweidProjection, ossimOrthoGraphicProjection, ossimCassiniProjection, ossimMillerProjection, ossimPolyconicProjection, ossimGnomonicProjection, ossimStereographicProjection, ossimPolarStereoProjection, ossimUtmProjection, ossimNewZealandMapGridProjection, ossimSpaceObliqueMercatorProjection, ossimCadrgProjection, ossimUpsProjection, ossimBngProjection, and ossimGoogleProjection.
Definition at line 923 of file ossimMapProjection.cpp.
References ossimKeywordNames::CENTRAL_MERIDIAN_KW, ossimDatumFactoryRegistry::create(), ossimGpt::datum(), ossimKeywordNames::ELEVATION_LOOKUP_FLAG_KW, ossimDatum::ellipsoid(), ossimKeywordlist::find(), ossimUnitConversionTool::getValue(), ossimUnitTypeLut::instance(), ossimDatumFactoryRegistry::instance(), ossimDatumFactory::instance(), ossimGpt::latd(), ossimProjection::loadState(), ossimEllipsoid::loadState(), ossimGpt::lond(), ossimDpt::makeNan(), ossimKeywordNames::ORIGIN_LATITUDE_KW, OSSIM_DEGREES, OSSIM_FEET, OSSIM_METERS, OSSIM_US_SURVEY_FEET, ossimKeywordNames::PCS_CODE_KW, ossimKeywordNames::PIXEL_SCALE_UNITS_KW, ossimKeywordNames::PIXEL_SCALE_XY_KW, ossimUnitConversionTool::setValue(), theDatum, theDegreesPerPixel, theElevationLookupFlag, theEllipsoid, theMetersPerPixel, theOrigin, thePcsCode, theUlGpt, ossimString::toBool(), ossimDpt::toPoint(), ossimString::toUInt32(), ossimDatumFactory::wgs84(), ossimDpt::x, and ossimDpt::y.
Referenced by assign(), ossimGoogleProjection::loadState(), ossimBngProjection::loadState(), ossimUpsProjection::loadState(), ossimNewZealandMapGridProjection::loadState(), ossimUtmProjection::loadState(), ossimPolarStereoProjection::loadState(), ossimGnomonicProjection::loadState(), ossimStereographicProjection::loadState(), ossimCassiniProjection::loadState(), ossimPolyconicProjection::loadState(), ossimMillerProjection::loadState(), ossimMollweidProjection::loadState(), ossimOrthoGraphicProjection::loadState(), ossimBonneProjection::loadState(), ossimEckert4Projection::loadState(), ossimVanDerGrintenProjection::loadState(), ossimEckert6Projection::loadState(), ossimSinusoidalProjection::loadState(), ossimCylEquAreaProjection::loadState(), ossimTransMercatorProjection::loadState(), ossimTransCylEquAreaProjection::loadState(), ossimAzimEquDistProjection::loadState(), ossimMercatorProjection::loadState(), ossimObliqueMercatorProjection::loadState(), ossimLlxyProjection::loadState(), ossimLambertConformalConicProjection::loadState(), and ossimAlbersProjection::loadState().
|
virtual |
Compares this to arg projection and returns TRUE if the same.
NOTE: As currently implemented in OSSIM, map projections also contain image geometry information like tiepoint and scale. This operator is only concerned with the map specification and ignores image geometry differences.
Implements ossimProjection.
Reimplemented in ossimLambertConformalConicProjection, ossimAlbersProjection, ossimLlxyProjection, ossimObliqueMercatorProjection, ossimMercatorProjection, ossimTransMercatorProjection, ossimUtmProjection, ossimTransCylEquAreaProjection, ossimSinusoidalProjection, ossimVanDerGrintenProjection, ossimBonneProjection, ossimMollweidProjection, ossimSpaceObliqueMercatorProjection, ossimCadrgProjection, ossimUpsProjection, and ossimGoogleProjection.
Definition at line 1484 of file ossimMapProjection.cpp.
References ossimObject::getClassName(), ossimMatrix4x4::getData(), hasModelTransform(), isGeographic(), OSSIM_UNIT_UNKNOWN, theDatum, theDegreesPerPixel, theFalseEastingNorthing, theMetersPerPixel, theModelTransform, theOrigin, thePcsCode, theProjectionUnits, theUlEastingNorthing, and theUlGpt.
Referenced by ossimUtmProjection::operator==().
|
virtual |
METHOD: origin() Returns projection's ground point origin. That is the GP corresponding to line=0, sample=0.
Implements ossimProjection.
Definition at line 84 of file ossimMapProjection.cpp.
References theOrigin.
Referenced by ossimTilingRect::getConvertedDistance(), ossimTiling::getConvertedTilingDistance(), ossimTiling::getDeltaPerPixel(), ossimGpkgSpatialRefSysRecord::init(), ossimAdjMapModel::initializeFromMap(), ossimStatePlaneProjectionInfo::matchesProjection(), ossimTilingRect::next(), ossimTiling::next(), ossimLlxyProjection::ossimLlxyProjection(), ossimUtmProjection::ossimUtmProjection(), ossimGeoTiff::parseProjection(), ossimUtmProjection::setOrigin(), ossimEquDistCylProjection::setOrigin(), setOrigin(), snapTiePointToOrigin(), ossimUtmProjection::update(), ossimOrthoImageMosaic::updateGeometry(), and ossimGeoTiff::writeTags().
|
virtual |
Prints data members to stream.
Returns stream&.
Reimplemented from ossimProjection.
Reimplemented in ossimLambertConformalConicProjection, ossimLlxyProjection, ossimTransMercatorProjection, and ossimUtmProjection.
Definition at line 1366 of file ossimMapProjection.cpp.
References ossimString::c_str(), ossimKeywordNames::CENTRAL_MERIDIAN_KW, ossimDatum::code(), ossimKeywordNames::DATUM_KW, ossimKeywordNames::FALSE_EASTING_NORTHING_KW, ossimKeywordNames::FALSE_EASTING_NORTHING_UNITS_KW, ossimEllipsoid::getA(), ossimEllipsoid::getB(), ossimObject::getClassName(), ossimLookUpTable::getEntryString(), ossimUnitTypeLut::instance(), isGeographic(), ossim::isnan(), ossimGpt::latd(), ossimGpt::lond(), ossimKeywordNames::MAJOR_AXIS_KW, ossimKeywordNames::METERS_PER_PIXEL_X_KW, ossimKeywordNames::METERS_PER_PIXEL_Y_KW, ossimKeywordNames::MINOR_AXIS_KW, ossimKeywordNames::ORIGIN_LATITUDE_KW, OSSIM_DEGREES, OSSIM_METERS, ossimKeywordNames::PCS_CODE_KW, ossimKeywordNames::PIXEL_SCALE_UNITS_KW, ossimKeywordNames::PIXEL_SCALE_XY_KW, ossimProjection::print(), theDatum, theDegreesPerPixel, theEllipsoid, theFalseEastingNorthing, theMetersPerPixel, theOrigin, thePcsCode, theUlEastingNorthing, theUlGpt, ossimKeywordNames::TIE_POINT_UNITS_KW, ossimKeywordNames::TIE_POINT_XY_KW, ossimDpt::toString(), ossimString::toString(), ossimKeywordNames::TYPE_KW, ossimDpt::x, and ossimDpt::y.
Referenced by ossimUtmProjection::print(), ossimTransMercatorProjection::print(), ossimLlxyProjection::print(), ossimTiling::print(), ossimLambertConformalConicProjection::print(), and ossimMapProjectionInfo::print().
|
virtual |
Method to save the state of an object to a keyword list.
Return true if ok or false on error.
Reimplemented from ossimProjection.
Reimplemented in ossimAlbersProjection, ossimLambertConformalConicProjection, ossimEquDistCylProjection, ossimLlxyProjection, ossimObliqueMercatorProjection, ossimMercatorProjection, ossimAzimEquDistProjection, ossimTransCylEquAreaProjection, ossimTransMercatorProjection, ossimCylEquAreaProjection, ossimEckert6Projection, ossimSinusoidalProjection, ossimEckert4Projection, ossimVanDerGrintenProjection, ossimBonneProjection, ossimMollweidProjection, ossimOrthoGraphicProjection, ossimCassiniProjection, ossimMillerProjection, ossimPolyconicProjection, ossimGnomonicProjection, ossimStereographicProjection, ossimPolarStereoProjection, ossimUtmProjection, ossimNewZealandMapGridProjection, ossimSpaceObliqueMercatorProjection, ossimCadrgProjection, ossimUpsProjection, ossimBngProjection, and ossimGoogleProjection.
Definition at line 811 of file ossimMapProjection.cpp.
References ossimKeywordlist::add(), ossimString::c_str(), ossimKeywordNames::CENTRAL_MERIDIAN_KW, ossimDatum::code(), ossimKeywordNames::DATUM_KW, ossimKeywordNames::ELEVATION_LOOKUP_FLAG_KW, ossimKeywordNames::FALSE_EASTING_NORTHING_KW, ossimKeywordNames::FALSE_EASTING_NORTHING_UNITS_KW, ossimMatrix4x4::getData(), getPcsCode(), ossimKeywordNames::IMAGE_MODEL_TRANSFORM_MATRIX_KW, ossimKeywordNames::IMAGE_MODEL_TRANSFORM_UNIT_KW, ossimUnitTypeLut::instance(), isGeographic(), ossimGpt::latd(), ossimGpt::lond(), ossimKeywordNames::ORIGIN_LATITUDE_KW, ossimKeywordNames::ORIGINAL_MAP_UNITS_KW, OSSIM_DEGREES, OSSIM_METERS, OSSIM_UNIT_UNKNOWN, ossimKeywordNames::PCS_CODE_KW, ossimKeywordNames::PIXEL_SCALE_UNITS_KW, ossimKeywordNames::PIXEL_SCALE_XY_KW, ossimProjection::saveState(), ossimEllipsoid::saveState(), ossimKeywordNames::SRS_NAME_KW, theDatum, theDegreesPerPixel, theElevationLookupFlag, theEllipsoid, theFalseEastingNorthing, theMetersPerPixel, theModelTransform, theModelTransformUnitType, theOrigin, theProjectionUnits, theUlEastingNorthing, theUlGpt, ossimKeywordNames::TIE_POINT_UNITS_KW, ossimKeywordNames::TIE_POINT_XY_KW, ossimDpt::toString(), and ossimString::toString().
Referenced by ossimMapProjectionInfo::getGeom(), ossimGoogleProjection::saveState(), ossimBngProjection::saveState(), ossimUpsProjection::saveState(), ossimMapViewController::saveState(), ossimNewZealandMapGridProjection::saveState(), ossimUtmProjection::saveState(), ossimPolarStereoProjection::saveState(), ossimStereographicProjection::saveState(), ossimGnomonicProjection::saveState(), ossimMillerProjection::saveState(), ossimCassiniProjection::saveState(), ossimPolyconicProjection::saveState(), ossimBonneProjection::saveState(), ossimMollweidProjection::saveState(), ossimOrthoGraphicProjection::saveState(), ossimVanDerGrintenProjection::saveState(), ossimEckert4Projection::saveState(), ossimEckert6Projection::saveState(), ossimSinusoidalProjection::saveState(), ossimAdjMapModel::saveState(), ossimCylEquAreaProjection::saveState(), ossimTransMercatorProjection::saveState(), ossimTransCylEquAreaProjection::saveState(), ossimAzimEquDistProjection::saveState(), ossimMercatorProjection::saveState(), ossimObliqueMercatorProjection::saveState(), ossimLlxyProjection::saveState(), ossimEquDistCylProjection::saveState(), ossimLambertConformalConicProjection::saveState(), ossimAlbersProjection::saveState(), ossimGdalWriter::writeProjectionInfo(), and ossimGeoTiff::writeTags().
|
virtual |
Definition at line 174 of file ossimMapProjection.cpp.
References ossimEllipsoid::setA(), ossimEllipsoid::setB(), theEllipsoid, and update().
|
virtual |
Sets theDatum to datum.
Sets theEllipsiod to datum's ellipsiod. Calls update().
Definition at line 179 of file ossimMapProjection.cpp.
References ossimGpt::changeDatum(), ossimDatum::ellipsoid(), theDatum, theEllipsoid, theOrigin, thePcsCode, theUlGpt, and update().
Referenced by ossimEpsgProjectionDatabase::createProjFromFormatARecord(), ossimEpsgProjectionDatabase::createProjFromUtmCode(), and ossimEpsgProjectionDatabase::findProjection().
|
virtual |
Definition at line 732 of file ossimMapProjection.cpp.
References computeMetersPerPixel(), and theDegreesPerPixel.
Referenced by ossimGeoPdfReader::computeBoundingRect(), ossimGdalOgrVectorAnnotation::computeDefaultView(), ossimKmlSuperOverlayReader::createDefaultProj(), ossimOgrVectorTileSource::createDefaultProj(), ossimMG4LidarReader::getGeoProjection(), ossimRpfTocEntry::getImageGeometry(), ossimDtedTileSource::getImageGeometry(), ossimGpkgTileEntry::getNewMapProjection(), ossimGpkgWriter::getNewOutputProjection(), ossimFgdcXmlDoc::getProjection(), ossimSrtmSupportData::getProjection(), ossimTilingRect::initializeBase(), ossimAuxXmlSupportData::initializeProjection(), ossimLasReader::initProjection(), ossimNitfProjectionFactory::makeEuiDistant(), ossimTiling::next(), ossimLasReader::setGsd(), ossimOrthoImageMosaic::updateGeometry(), and ossimGdalOgrVectorAnnotation::verifyViewParams().
void ossimMapProjection::setElevationLookupFlag | ( | bool | flag | ) |
Definition at line 1689 of file ossimMapProjection.cpp.
References theElevationLookupFlag.
Referenced by ossimRangeDomeTileSource::initialize().
|
virtual |
SET METHODS:
Definition at line 169 of file ossimMapProjection.cpp.
References theEllipsoid, and update().
void ossimMapProjection::setMatrix | ( | double | rotation, |
const ossimDpt & | scale, | ||
const ossimDpt & | translation | ||
) |
void ossimMapProjection::setMatrixRotation | ( | double | rotation | ) |
void ossimMapProjection::setMatrixScale | ( | const ossimDpt & | scale | ) |
void ossimMapProjection::setMatrixTranslation | ( | const ossimDpt & | translation | ) |
|
virtual |
Reimplemented in ossimLlxyProjection.
Definition at line 726 of file ossimMapProjection.cpp.
References computeDegreesPerPixel(), and theMetersPerPixel.
Referenced by ossimGeoPdfReader::computeBoundingRect(), ATP::AtpGenerator::constructChain(), ossimChipProcTool::getChip(), ossimMG4LidarReader::getGeoProjection(), ossimGpkgTileEntry::getNewMapProjection(), ossimGpkgWriter::getNewOutputProjection(), ossimFgdcXmlDoc::getProjection(), ossimRangeDomeTileSource::initialize(), ossimTilingRect::initializeBase(), ossimAuxXmlSupportData::initializeProjection(), ossimViewshedTool::initializeProjectionGsd(), ossimEquationUtil::initInputSources(), ossimLasReader::initProjection(), ossimPointCloudTool::loadPC(), newUtmView(), ossimTiling::next(), ossimVpfAnnotationSource::ossimVpfAnnotationSource(), ossimPointCloudTool::setGSD(), ossimPointCloudImageHandler::setGSD(), ossimLasReader::setGsd(), ossimLlxyProjection::setMetersPerPixel(), ossimEquDistCylProjection::setOrigin(), ossimOrthoImageMosaic::updateGeometry(), ossimApplanixUtmModel::updateModel(), and ossimGdalOgrVectorAnnotation::verifyViewParams().
|
inline |
Definition at line 259 of file ossimMapProjection.h.
|
virtual |
Sets theOrigin to origin.
Sets theDatum to origin's datum. Sets theEllipsiod to datum's ellipsiod. Calls update().
origin | The projection origin. |
Reimplemented in ossimEquDistCylProjection, and ossimUtmProjection.
Definition at line 199 of file ossimMapProjection.cpp.
References ossimGpt::changeDatum(), origin(), theDatum, theOrigin, and update().
Referenced by ossimEpsgProjectionFactory::createProjFromAutoCode(), ossimEpsgProjectionDatabase::createProjFromFormatARecord(), ossimRpfTocEntry::getImageGeometry(), ossimPointCloudImageHandler::getImageGeometry(), ossimChipperUtil::getNewGeoScaledProjection(), ossimRangeDomeTileSource::initialize(), ossimViewshedTool::initializeProjectionGsd(), ossimEquationUtil::initInputSources(), ossimUtmProjection::setOrigin(), and ossimEquDistCylProjection::setOrigin().
|
virtual |
Definition at line 89 of file ossimMapProjection.cpp.
References thePcsCode.
Referenced by ossimEpsgProjectionDatabase::createProjFromFormatARecord(), ossimEpsgProjectionDatabase::createProjFromFormatBRecord(), ossimEpsgProjectionDatabase::createProjFromUtmCode(), ossimEpsgProjectionDatabase::findProjection(), and ossimGpkgWriter::getNewWorldMercatorProjection().
|
inline |
Definition at line 275 of file ossimMapProjection.h.
Referenced by ossimEpsgProjectionDatabase::createProjFromFormatARecord().
|
virtual |
Definition at line 789 of file ossimMapProjection.cpp.
References theUlEastingNorthing.
Referenced by ossimGeoPdfReader::computeBoundingRect(), setUlTiePoints(), and ossimOrthoImageMosaic::updateGeometry().
|
virtual |
Definition at line 798 of file ossimMapProjection.cpp.
References ossimGpt::changeDatum(), ossimGpt::datum(), theDatum, and theUlGpt.
Referenced by ossimGdalOgrVectorAnnotation::computeDefaultView(), ossimKmlSuperOverlayReader::createDefaultProj(), ossimOgrVectorTileSource::createDefaultProj(), setUlTiePoints(), ossimOrthoImageMosaic::updateGeometry(), and ossimGdalOgrVectorAnnotation::verifyViewParams().
|
virtual |
Definition at line 772 of file ossimMapProjection.cpp.
References forward(), setUlEastingNorthing(), and setUlGpt().
Referenced by applyScale(), ossimGeoPdfReader::computeBoundingRect(), ATP::AtpGenerator::constructChain(), ossimMG4LidarReader::getGeoProjection(), ossimRpfTocEntry::getImageGeometry(), ossimDtedTileSource::getImageGeometry(), ossimPointCloudImageHandler::getImageGeometry(), ossimLasReader::getImageGeometry(), ossimGpkgTileEntry::getNewMapProjection(), ossimFgdcXmlDoc::getProjection(), ossimSrtmSupportData::getProjection(), ossimRangeDomeTileSource::initialize(), ossimAuxXmlSupportData::initializeProjection(), ossimLasReader::initProjection(), ossimNitfProjectionFactory::makeEuiDistant(), ossimTilingRect::next(), ossimTiling::next(), ossimEquDistCylProjection::setOrigin(), and ossimGpkgWriter::setProjectionTie().
|
virtual |
Definition at line 778 of file ossimMapProjection.cpp.
References inverse(), setUlEastingNorthing(), and setUlGpt().
void ossimMapProjection::snapTiePointTo | ( | ossim_float64 | multiple, |
ossimUnitType | unitType | ||
) |
Utility method to snap the tie point to some multiple.
This is used to overcome inaccuracies in formats like NITF's rpc tag witch has a four digit decimal degree precision for the lat/lon offset.
multiple | Value to snap tie point to like 1.0. |
unitType | OSSIM_METERS or OSSIM_DEGREES. |
EXAMPLE1: projection: ossimUtmProjection tie point is: 551634.88, 4492036.16 multiple: 1.0 unitType: OSSIM_METERS new tie point: 551635.00, 4492036.00
EXAMPLE2: projection: ossimEquDistCylProjection tie point is: -90.3246343 42.0297589 multiple: 0.0001 unitType: OSSIM_DEGREES new tie point: -90.3246 42.0298
Definition at line 1597 of file ossimMapProjection.cpp.
References forward(), ossimUnitConversionTool::getDegrees(), getFalseEasting(), getFalseNorthing(), ossimUnitConversionTool::getMeters(), inverse(), isGeographic(), ossimGpt::latd(), ossimGpt::lond(), OSSIM_DEGREES, OSSIM_METERS, ossimUnitConversionTool::setOrigin(), ossimUnitConversionTool::setValue(), theOrigin, theUlEastingNorthing, theUlGpt, ossimDpt::x, and ossimDpt::y.
void ossimMapProjection::snapTiePointToOrigin | ( | ) |
Definition at line 1652 of file ossimMapProjection.cpp.
References forward(), getFalseEasting(), getFalseNorthing(), inverse(), isGeographic(), ossimGpt::latd(), ossimGpt::lond(), origin(), theDegreesPerPixel, theMetersPerPixel, theUlEastingNorthing, theUlGpt, ossimDpt::x, and ossimDpt::y.
|
virtual |
Reimplemented in ossimSpaceObliqueMercatorProjection, ossimAlbersProjection, ossimLambertConformalConicProjection, ossimEquDistCylProjection, ossimObliqueMercatorProjection, ossimAzimEquDistProjection, ossimOrthoGraphicProjection, ossimSinusoidalProjection, ossimCylEquAreaProjection, ossimMercatorProjection, ossimPolyconicProjection, ossimTransCylEquAreaProjection, ossimEckert4Projection, ossimMillerProjection, ossimMollweidProjection, ossimVanDerGrintenProjection, ossimGnomonicProjection, ossimPolarStereoProjection, ossimTransMercatorProjection, ossimUtmProjection, ossimBonneProjection, ossimCassiniProjection, ossimEckert6Projection, ossimStereographicProjection, ossimUpsProjection, ossimNewZealandMapGridProjection, ossimGoogleProjection, and ossimBngProjection.
Definition at line 229 of file ossimMapProjection.cpp.
References computeDegreesPerPixel(), computeMetersPerPixel(), forward(), hasModelTransform(), ossimDpt::hasNans(), ossimGpt::hasNans(), inverse(), isGeographic(), ossimDpt::lat, ossimDpt::lon, ossimGpt::metersPerDegree(), theDegreesPerPixel, theMetersPerPixel, theOrigin, theUlEastingNorthing, theUlGpt, updateFromTransform(), ossimDpt::x, and ossimDpt::y.
Referenced by setAB(), setDatum(), setEllipsoid(), setOrigin(), ossimBngProjection::update(), ossimGoogleProjection::update(), ossimNewZealandMapGridProjection::update(), ossimUpsProjection::update(), ossimEckert6Projection::update(), ossimBonneProjection::update(), ossimCassiniProjection::update(), ossimStereographicProjection::update(), ossimGnomonicProjection::update(), ossimPolarStereoProjection::update(), ossimTransMercatorProjection::update(), ossimUtmProjection::update(), ossimMollweidProjection::update(), ossimVanDerGrintenProjection::update(), ossimMillerProjection::update(), ossimEckert4Projection::update(), ossimMercatorProjection::update(), ossimTransCylEquAreaProjection::update(), ossimPolyconicProjection::update(), ossimCylEquAreaProjection::update(), ossimSinusoidalProjection::update(), ossimOrthoGraphicProjection::update(), ossimAzimEquDistProjection::update(), ossimObliqueMercatorProjection::update(), ossimEquDistCylProjection::update(), ossimLambertConformalConicProjection::update(), and ossimAlbersProjection::update().
|
protected |
Definition at line 281 of file ossimMapProjection.cpp.
References computeDegreesPerPixel(), computeMetersPerPixel(), ossimMatrix4x4::getData(), ossimUnitConversionTool::getValue(), hasModelTransform(), lineSampleToWorld(), OSSIM_DEGREES, OSSIM_METERS, OSSIM_MINUTES, OSSIM_RADIANS, OSSIM_SECONDS, ossimUnitConversionTool::setValue(), theDegreesPerPixel, theMetersPerPixel, theModelTransform, theModelTransformUnitType, theUlEastingNorthing, theUlGpt, ossimDpt::x, and ossimDpt::y.
Referenced by applyScale(), and update().
Reimplemented in ossimCadrgProjection.
Definition at line 399 of file ossimMapProjection.cpp.
Referenced by ossimMapCompositionSource::addGeographicBottomGridLabels(), ossimMapCompositionSource::addGeographicGridLines(), ossimMapCompositionSource::addGeographicGridReseaux(), ossimMapCompositionSource::addGeographicLeftGridLabels(), ossimMapCompositionSource::addGeographicRightGridLabels(), ossimGeographicAnnotationGrid::computeBoundingRect(), ossimGeographicAnnotationGrid::draw(), ossimEquDistCylProjection::worldToLineSample(), and ossimAdjMapModel::worldToLineSample().
|
virtual |
METHOD: worldToLineSample() Performs the forward projection from ground point to line, sample.
Implements ossimProjection.
Reimplemented in ossimEquDistCylProjection, ossimLlxyProjection, and ossimCadrgProjection.
Definition at line 425 of file ossimMapProjection.cpp.
References ossimGpt::changeDatum(), ossimGpt::datum(), forward(), ossimMatrix4x4::getData(), ossimUnitConversionTool::getValue(), isGeographic(), ossimGpt::isLatNan(), ossimGpt::isLonNan(), ossimDpt::isNan(), ossimDpt::lat, ossimGpt::latd(), ossimDpt::line, ossimDpt::lon, ossimGpt::lond(), ossimDpt::makeNan(), OSSIM_DEGREES, OSSIM_FEET, OSSIM_METERS, OSSIM_MINUTES, OSSIM_RADIANS, OSSIM_SECONDS, OSSIM_UNIT_UNKNOWN, OSSIM_US_SURVEY_FEET, ossimDpt::samp, ossimUnitConversionTool::setValue(), theDatum, theDegreesPerPixel, theInverseModelTransform, theMetersPerPixel, theModelTransformUnitType, theOrigin, theUlEastingNorthing, theUlGpt, ossimDpt::x, and ossimDpt::y.
|
protected |
This is only set if we want to have built in datum shifting.
Definition at line 318 of file ossimMapProjection.h.
Referenced by ossimCadrgProjection::forward(), ossimUpsProjection::forward(), ossimNewZealandMapGridProjection::forward(), ossimBonneProjection::forward(), ossimCassiniProjection::forward(), ossimEckert6Projection::forward(), ossimTransMercatorProjection::forward(), ossimEckert4Projection::forward(), ossimUtmProjection::forward(), ossimGnomonicProjection::forward(), ossimPolarStereoProjection::forward(), ossimCylEquAreaProjection::forward(), ossimVanDerGrintenProjection::forward(), ossimMillerProjection::forward(), ossimMollweidProjection::forward(), ossimStereographicProjection::forward(), ossimTransCylEquAreaProjection::forward(), ossimMercatorProjection::forward(), ossimPolyconicProjection::forward(), ossimSinusoidalProjection::forward(), ossimOrthoGraphicProjection::forward(), ossimAzimEquDistProjection::forward(), ossimObliqueMercatorProjection::forward(), ossimEquDistCylProjection::forward(), ossimLambertConformalConicProjection::forward(), ossimSpaceObliqueMercatorProjection::forward(), ossimAlbersProjection::forward(), getDatum(), ossimOrthoGraphicProjection::getGroundClipPoints(), ossimBngProjection::inverse(), ossimCadrgProjection::inverse(), ossimGoogleProjection::inverse(), ossimUpsProjection::inverse(), ossimNewZealandMapGridProjection::inverse(), ossimEckert6Projection::inverse(), ossimTransMercatorProjection::inverse(), ossimBonneProjection::inverse(), ossimUtmProjection::inverse(), ossimCassiniProjection::inverse(), ossimGnomonicProjection::inverse(), ossimPolarStereoProjection::inverse(), ossimVanDerGrintenProjection::inverse(), ossimMillerProjection::inverse(), ossimMollweidProjection::inverse(), ossimStereographicProjection::inverse(), ossimTransCylEquAreaProjection::inverse(), ossimMercatorProjection::inverse(), ossimPolyconicProjection::inverse(), ossimEckert4Projection::inverse(), ossimCylEquAreaProjection::inverse(), ossimSinusoidalProjection::inverse(), ossimOrthoGraphicProjection::inverse(), ossimAzimEquDistProjection::inverse(), ossimObliqueMercatorProjection::inverse(), ossimEquDistCylProjection::inverse(), ossimLambertConformalConicProjection::inverse(), ossimSpaceObliqueMercatorProjection::inverse(), ossimAlbersProjection::inverse(), isEqualTo(), lineSampleHeightToWorld(), ossimEquDistCylProjection::lineSampleHeightToWorld(), loadState(), operator==(), ossimBngProjection::ossimBngProjection(), ossimLlxyProjection::ossimLlxyProjection(), print(), ossimCadrgProjection::saveState(), saveState(), setDatum(), setOrigin(), setUlGpt(), ossimUtmProjection::setZone(), ossimBngProjection::update(), ossimNewZealandMapGridProjection::update(), ossimEquDistCylProjection::update(), worldToLineSample(), and ossimEquDistCylProjection::worldToLineSample().
|
protected |
Hold the decimal degrees per pixel.
x = longitude y = latitude
Definition at line 332 of file ossimMapProjection.h.
Referenced by applyScale(), computeDegreesPerPixel(), computeMetersPerPixel(), getDecimalDegreesPerPixel(), ossimLlxyProjection::getLatSpacing(), ossimLlxyProjection::getLonSpacing(), isEqualTo(), lineSampleHeightToWorld(), ossimLlxyProjection::lineSampleToWorld(), ossimLlxyProjection::loadState(), loadState(), ossimLlxyProjection::operator==(), operator==(), ossimLlxyProjection::ossimLlxyProjection(), ossimMapProjection(), ossimLlxyProjection::print(), print(), saveState(), setDecimalDegreesPerPixel(), ossimLlxyProjection::setLatSpacing(), ossimLlxyProjection::setLonSpacing(), ossimLlxyProjection::setMetersPerPixel(), snapTiePointToOrigin(), update(), updateFromTransform(), worldToLineSample(), and ossimLlxyProjection::worldToLineSample().
|
protected |
Definition at line 357 of file ossimMapProjection.h.
Referenced by getElevationLookupFlag(), isEqualTo(), lineSampleHeightToWorld(), ossimEquDistCylProjection::lineSampleHeightToWorld(), ossimLlxyProjection::lineSampleToWorld(), loadState(), saveState(), and setElevationLookupFlag().
|
protected |
This method verifies that the projection parameters match the current pcs code.
If not this will set the pcs code to 0.
Definition at line 312 of file ossimMapProjection.h.
Referenced by getA(), getB(), getF(), isEqualTo(), loadState(), ossimLlxyProjection::ossimLlxyProjection(), print(), saveState(), setAB(), setDatum(), setEllipsoid(), ossimSpaceObliqueMercatorProjection::setParameters(), ossimNewZealandMapGridProjection::update(), ossimUpsProjection::update(), ossimStereographicProjection::update(), ossimBonneProjection::update(), ossimCassiniProjection::update(), ossimEckert6Projection::update(), ossimUtmProjection::update(), ossimTransMercatorProjection::update(), ossimGnomonicProjection::update(), ossimPolarStereoProjection::update(), ossimMillerProjection::update(), ossimVanDerGrintenProjection::update(), ossimMollweidProjection::update(), ossimEckert4Projection::update(), ossimMercatorProjection::update(), ossimPolyconicProjection::update(), ossimTransCylEquAreaProjection::update(), ossimCylEquAreaProjection::update(), ossimSinusoidalProjection::update(), ossimOrthoGraphicProjection::update(), ossimAzimEquDistProjection::update(), ossimObliqueMercatorProjection::update(), ossimEquDistCylProjection::update(), ossimLambertConformalConicProjection::update(), and ossimAlbersProjection::update().
|
protected |
Hold the false easting northing.
x = false easting, y = false northing
Definition at line 349 of file ossimMapProjection.h.
Referenced by getFalseEasting(), getFalseNorthing(), isEqualTo(), ossimPolarStereoProjection::loadState(), ossimStereographicProjection::loadState(), ossimGnomonicProjection::loadState(), ossimCassiniProjection::loadState(), ossimPolyconicProjection::loadState(), ossimMillerProjection::loadState(), ossimMollweidProjection::loadState(), ossimBonneProjection::loadState(), ossimOrthoGraphicProjection::loadState(), ossimEckert4Projection::loadState(), ossimVanDerGrintenProjection::loadState(), ossimSinusoidalProjection::loadState(), ossimEckert6Projection::loadState(), ossimCylEquAreaProjection::loadState(), ossimTransMercatorProjection::loadState(), ossimTransCylEquAreaProjection::loadState(), ossimAzimEquDistProjection::loadState(), ossimMercatorProjection::loadState(), ossimObliqueMercatorProjection::loadState(), ossimLambertConformalConicProjection::loadState(), ossimAlbersProjection::loadState(), operator==(), print(), saveState(), ossimBngProjection::update(), ossimNewZealandMapGridProjection::update(), ossimUpsProjection::update(), ossimStereographicProjection::update(), ossimCassiniProjection::update(), ossimEckert6Projection::update(), ossimBonneProjection::update(), ossimUtmProjection::update(), ossimGnomonicProjection::update(), ossimPolarStereoProjection::update(), ossimTransMercatorProjection::update(), ossimVanDerGrintenProjection::update(), ossimMollweidProjection::update(), ossimEckert4Projection::update(), ossimMillerProjection::update(), ossimTransCylEquAreaProjection::update(), ossimMercatorProjection::update(), ossimPolyconicProjection::update(), ossimCylEquAreaProjection::update(), ossimSinusoidalProjection::update(), ossimOrthoGraphicProjection::update(), ossimAzimEquDistProjection::update(), ossimObliqueMercatorProjection::update(), ossimEquDistCylProjection::update(), ossimLambertConformalConicProjection::update(), and ossimAlbersProjection::update().
|
protected |
Definition at line 364 of file ossimMapProjection.h.
Referenced by applyScale(), isEqualTo(), and worldToLineSample().
|
protected |
Holds the number of meters per pixel.
x = easting y = northing
Definition at line 325 of file ossimMapProjection.h.
Referenced by applyScale(), computeDegreesPerPixel(), computeMetersPerPixel(), eastingNorthingToLineSample(), getMetersPerPixel(), isEqualTo(), lineSampleHeightToWorld(), ossimEquDistCylProjection::lineSampleHeightToWorld(), lineSampleToEastingNorthing(), ossimLlxyProjection::loadState(), loadState(), operator==(), ossimLlxyProjection::ossimLlxyProjection(), ossimMapProjection(), print(), saveState(), ossimLlxyProjection::setLatSpacing(), ossimLlxyProjection::setLonSpacing(), ossimLlxyProjection::setMetersPerPixel(), setMetersPerPixel(), snapTiePointToOrigin(), ossimEquDistCylProjection::update(), update(), updateFromTransform(), worldToLineSample(), and ossimEquDistCylProjection::worldToLineSample().
|
protected |
Definition at line 363 of file ossimMapProjection.h.
Referenced by applyScale(), isEqualTo(), lineSampleHeightToWorld(), operator==(), saveState(), and updateFromTransform().
|
protected |
Definition at line 368 of file ossimMapProjection.h.
Referenced by applyScale(), isEqualTo(), lineSampleHeightToWorld(), ossimEquDistCylProjection::lineSampleHeightToWorld(), saveState(), updateFromTransform(), worldToLineSample(), and ossimEquDistCylProjection::worldToLineSample().
|
protected |
Definition at line 313 of file ossimMapProjection.h.
Referenced by computeDegreesPerPixel(), computeMetersPerPixel(), ossimOrthoGraphicProjection::getGroundClipPoints(), getOrigin(), isEqualTo(), ossimCadrgProjection::lineSampleToWorld(), ossimLlxyProjection::lineSampleToWorld(), ossimUtmProjection::loadState(), ossimLlxyProjection::loadState(), loadState(), operator==(), origin(), ossimLlxyProjection::ossimLlxyProjection(), ossimMapProjection(), ossimLlxyProjection::print(), print(), saveState(), setDatum(), ossimUpsProjection::setDefaults(), ossimNewZealandMapGridProjection::setDefaults(), ossimBonneProjection::setDefaults(), ossimObliqueMercatorProjection::setDefaults(), ossimUtmProjection::setHemisphere(), ossimLlxyProjection::setMetersPerPixel(), setOrigin(), ossimUtmProjection::setZone(), snapTiePointTo(), ossimBngProjection::update(), ossimNewZealandMapGridProjection::update(), ossimCassiniProjection::update(), ossimBonneProjection::update(), ossimEckert6Projection::update(), ossimStereographicProjection::update(), ossimGnomonicProjection::update(), ossimUtmProjection::update(), ossimPolarStereoProjection::update(), ossimTransMercatorProjection::update(), ossimMillerProjection::update(), ossimMollweidProjection::update(), ossimEckert4Projection::update(), ossimVanDerGrintenProjection::update(), ossimMercatorProjection::update(), ossimPolyconicProjection::update(), ossimTransCylEquAreaProjection::update(), ossimCylEquAreaProjection::update(), ossimSinusoidalProjection::update(), ossimOrthoGraphicProjection::update(), ossimAzimEquDistProjection::update(), ossimObliqueMercatorProjection::update(), ossimEquDistCylProjection::update(), ossimLambertConformalConicProjection::update(), ossimAlbersProjection::update(), update(), ossimCadrgProjection::worldToLineSample(), worldToLineSample(), and ossimLlxyProjection::worldToLineSample().
|
mutableprotected |
Projection Coordinate System(PCS) code.
Mutable because they may update automatically after the projection is initialized, even in a const method. Normally set to 0 until the corresponding EPSG code can be determined. If the projection is NOT represented by any EPSG code, then the PCS is set to 32767.
Definition at line 355 of file ossimMapProjection.h.
Referenced by getPcsCode(), isEqualTo(), ossimGoogleProjection::loadState(), loadState(), operator==(), ossimGoogleProjection::ossimGoogleProjection(), print(), setDatum(), setPcsCode(), and ossimEquDistCylProjection::update().
|
protected |
Linear units of the projection as indicated in the projection's specification:
Definition at line 371 of file ossimMapProjection.h.
Referenced by isEqualTo(), operator==(), saveState(), and ossimEquDistCylProjection::setDefaults().
|
protected |
Hold tie point as easting northing.
x = easting, y = northing
Definition at line 342 of file ossimMapProjection.h.
Referenced by eastingNorthingToLineSample(), getUlEastingNorthing(), isEqualTo(), lineSampleHeightToWorld(), ossimEquDistCylProjection::lineSampleHeightToWorld(), lineSampleToEastingNorthing(), operator==(), ossimLlxyProjection::ossimLlxyProjection(), ossimMapProjection(), print(), saveState(), setUlEastingNorthing(), snapTiePointTo(), snapTiePointToOrigin(), update(), updateFromTransform(), worldToLineSample(), and ossimEquDistCylProjection::worldToLineSample().
|
protected |
Hold tie point in decimal degrees.
Definition at line 335 of file ossimMapProjection.h.
Referenced by getUlGpt(), isEqualTo(), lineSampleHeightToWorld(), ossimLlxyProjection::lineSampleToWorld(), loadState(), operator==(), ossimLlxyProjection::ossimLlxyProjection(), ossimMapProjection(), print(), saveState(), setDatum(), ossimEquDistCylProjection::setOrigin(), setUlGpt(), snapTiePointTo(), snapTiePointToOrigin(), update(), updateFromTransform(), worldToLineSample(), and ossimLlxyProjection::worldToLineSample().