47 theSpaceImagingGeometry.clear();
49 theSpaceImagingGeometry.addFile(file.
c_str());
54 theSpaceImagingGeometry.clear();
56 theSpaceImagingGeometry = kwl;
60 const char* prefix)
const 63 ossimKeywordlist::KeywordMap::const_iterator node = geomMap.begin();
65 while(node != geomMap.end())
67 ossimString keyword = spaceImagingToOssimKeyword((*node).first);
68 ossimString value = spaceImagingToOssimValue((*node).first,
83 if(spaceImagingKeyword == SIG_NUMBER_OF_BANDS_KW)
87 else if(spaceImagingKeyword == SIG_DATUM_KW)
91 else if((spaceImagingKeyword == SIG_PROJECTION_KW)||
92 (spaceImagingKeyword == SIG_SELECTED_PROJECTION_KW))
96 else if(spaceImagingKeyword == SIG_ZONE_KW)
100 else if(spaceImagingKeyword == SIG_UL_EASTING_KW)
104 else if(spaceImagingKeyword == SIG_UL_NORTHING_KW)
108 else if(spaceImagingKeyword == SIG_PIXEL_SIZE_X_KW)
112 else if(spaceImagingKeyword == SIG_PIXEL_SIZE_Y_KW)
116 else if(spaceImagingKeyword == SIG_COLUMNS_KW)
120 else if(spaceImagingKeyword == SIG_ROWS_KW)
132 const char* value = theSpaceImagingGeometry.
find(thePrefix.c_str(),
133 spaceImagingKeyword.
c_str());
137 if(spaceImagingKeyword == SIG_DATUM_KW)
145 if( datum ==
"WGS84")
150 else if((spaceImagingKeyword == SIG_PROJECTION_KW)||
151 (spaceImagingKeyword == SIG_SELECTED_PROJECTION_KW))
156 if(proj ==
"UNIVERSAL TRANSVERSE MERCATOR")
162 ossimNotify(
ossimNotifyLevel_WARN) <<
"WARNING ossimSpaceImagingGeom::spaceImagingToOssimValue: Projection " << value <<
" doesn't have a converter yet!" << endl
163 <<
"Please add it" << endl;
166 else if(spaceImagingKeyword == SIG_UL_EASTING_KW)
169 easting = easting.
trim();
178 is >> eastingValue >> eastingUnits;
181 if(eastingUnits!=
"METERS")
188 else if(spaceImagingKeyword == SIG_UL_NORTHING_KW)
191 northing = northing.
trim();
200 is >> northingValue >> northingUnits;
202 northingUnits = northingUnits.
trim().
upcase();
203 if(northingUnits!=
"METERS")
208 return northingValue;
210 else if(spaceImagingKeyword == SIG_PIXEL_SIZE_X_KW)
222 is >> gsdValue >> gsdUnits;
225 if(gsdUnits!=
"METERS")
232 else if(spaceImagingKeyword == SIG_PIXEL_SIZE_Y_KW)
244 is >> gsdValue >> gsdUnits;
247 if(gsdUnits!=
"METERS")
260 return theSpaceImagingGeometry.
find(SIG_BAND_KW);
265 return theSpaceImagingGeometry.
find(SIG_FILENAME_KW);
270 return theSpaceImagingGeometry.
find(SIG_PRODUCER_KW);
static const char * SIG_COLUMNS_KW
static ossimString upcase(const ossimString &aString)
std::basic_ostringstream< char > ostringstream
Class for char output memory streams.
static const char * DATUM_KW
static const char * SIG_BAND_KW
static const char * SIG_DATUM_KW
static const char * SIG_FILENAME_KW
Represents serializable keyword/value map.
void setGeometry(const ossimFilename &file)
static const char * SIG_SELECTED_PROJECTION_KW
static const char * NUMBER_LINES_KW
static const char * SIG_PRODUCER_KW
static const char * SIG_BITS_PER_PIXEL_KW
static const char * SIG_NUMBER_OF_BANDS_KW
static const char * SIG_PROJECT_NAME_KW
static const char * SIG_PIXEL_SIZE_Y_KW
static const char * METERS_PER_PIXEL_Y_KW
static const char * TYPE_KW
static const char * TIE_POINT_NORTHING_KW
void add(const char *prefix, const ossimKeywordlist &kwl, bool overwrite=true)
static const char * ZONE_KW
ossimString spaceImagingToOssimValue(const ossimString &spaceImagingKeyword, const ossimString &spaceImagingValue) const
ossimString getBandName() const
static const char * TIE_POINT_EASTING_KW
std::map< std::string, std::string > KeywordMap
ossimString spaceImagingToOssimKeyword(const ossimString &spaceImagingKeyword) const
ossimString trim(const ossimString &valueToTrim=ossimString(" \\)) const
this will strip lead and trailing character passed in.
static const char * SIG_PIXEL_SIZE_X_KW
static const char * NUMBER_BANDS_KW
static const char * SIG_ROWS_KW
ossimString getProducer() const
static const char * SIG_PROJECTION_KW
static const char * SIG_ZONE_KW
const char * c_str() const
Returns a pointer to a null-terminated array of characters representing the string's contents...
ossimFilename getFilename() const
void exportToOssim(ossimKeywordlist &kwl, const char *prefix=0) const
std::basic_istringstream< char > istringstream
Class for char input memory streams.
static const char * SIG_UL_EASTING_KW
static const char * METERS_PER_PIXEL_X_KW
static const char * SIG_UL_NORTHING_KW
static const char * NUMBER_SAMPLES_KW
std::string::size_type find(const std::string &s, std::string::size_type pos=0) const
Searches for s as a substring of *this, beginning at character pos of *this.
OSSIMDLLEXPORT std::ostream & ossimNotify(ossimNotifyLevel level=ossimNotifyLevel_WARN)