45 static const std::string AOI_GEO_RECT_KW =
"aoi_geo_rect";
46 static const std::string AOI_MAP_RECT_KW =
"aoi_map_rect";
47 static const std::string AOI_GEO_CENTER_KW =
"aoi_geo_center";
48 static const std::string AOI_SIZE_METERS_KW =
"aoi_size_meters";
49 static const std::string AOI_SIZE_PIXELS_KW =
"aoi_size_pixels";
50 static const std::string CLIP_POLY_LAT_LON_KW =
"clip_poly_lat_lon";
51 static const std::string LUT_FILE_KW =
"lut_file";
52 static const std::string GSD_KW =
"gsd";
53 static const std::string OUTPUT_RADIOMETRY_KW =
"output_radiometry";
54 static const std::string READER_PROPERTY_KW =
"reader_property";
55 static const std::string SNAP_TIE_TO_ORIGIN_KW =
"snap_tie_to_origin";
56 static const std::string SRS_KW =
"srs";
57 static const std::string TILE_SIZE_KW =
"tile_size";
58 static const std::string TRUE_KW =
"true";
59 static const std::string WRITER_KW =
"writer";
60 static const std::string WRITER_PROPERTY_KW =
"writer_property";
63 : m_projIsIdentity(false),
70 : m_projIsIdentity(false),
104 std::string tempString1;
106 std::string tempString2;
108 std::string tempString3;
110 std::string tempString4;
116 vector<ossimString> paramList;
122 if ( ap.
read(
"--load-options", stringParam1))
131 if ( ap.
read(
"--aoi-geo-bbox", stringParam1, stringParam2, stringParam3, stringParam4))
134 ostr<<tempString1<<
" "<<tempString2<<
" "<<tempString3<<
" "<<tempString4<<ends;
138 if ( ap.
read(
"--aoi-geo-center", stringParam1, stringParam2))
141 ostr<<tempString1<<
" "<<tempString2<<ends;
145 if ( ap.
read(
"--aoi-map-bbox", stringParam1, stringParam2, stringParam3, stringParam4))
148 ostr<<tempString1<<
" "<<tempString2<<
" "<<tempString3<<
" "<<tempString4<<ends;
152 if ( ap.
read(
"--aoi-size-meters", stringParam1, stringParam2))
155 ostr<<tempString1<<
" "<<tempString2<<ends;
159 if ( ap.
read(
"--aoi-size-pixels", stringParam1, stringParam2))
162 ostr<<tempString1<<
" "<<tempString2<<ends;
166 if (ap.
read(
"-b", stringParam1) || ap.
read(
"--bands", stringParam1))
169 if( ap.
read(
"--central-meridian", stringParam1) )
172 if( ap.
read(
"--color-table", stringParam1) || ap.
read(
"--lut", stringParam1) )
175 if ( ap.
read(
"-e", stringParam1) || ap.
read(
"--entry", stringParam1) )
178 if (ap.
read(
"--dem", paramList))
189 if( ap.
read(
"--gsd", stringParam1) )
192 if ( ap.
read(
"--hemisphere", stringParam1) )
195 vector<ossimString> imageFnames;
196 if (ap.
read(
"--image", imageFnames) || ap.
read(
"-i", imageFnames))
198 if (imageFnames.size() == 1)
200 else for(
ossim_uint32 idx=0; idx<imageFnames.size(); ++idx)
208 if( ap.
read(
"--origin-latitude", stringParam1) )
211 if(ap.
read(
"--output-file", stringParam1) || ap.
read(
"-o", stringParam1))
214 if(ap.
read(
"--output-radiometry", stringParam1))
217 if( ap.
read(
"--projection", stringParam1) )
220 while (ap.
read(
"--reader-prop", stringParam1))
223 key << READER_PROPERTY_KW << readerPropIdx;
228 if ( ap.
read(
"--snap-tie-to-origin") )
231 if( ap.
read(
"--srs", stringParam1) )
239 if( ap.
read(
"--tile-size", stringParam1) )
242 if( ap.
read(
"-w", stringParam1) || ap.
read(
"--writer", stringParam1) )
245 while (ap.
read(
"--writer-prop", stringParam1))
248 key << WRITER_PROPERTY_KW << writerPropIdx;
253 if( ap.
read(
"--zone", stringParam1) )
263 bool dumpKwl =
false;
264 if ( ap.
read(
"--dump-options") )
267 if ( ap.
argc() >= 2 )
285 while ( pos < (ap.
argc()-1) )
289 m_kwl.
add( key.str().c_str(), ap[pos] );
312 xmsg<<
"ossimChipProcUtil:"<<__LINE__<<
" Error encountered writing options file to <"<<f<<
">";
335 getScalarTypeFromString(
m_kwl.
findKey( OUTPUT_RADIOMETRY_KW ) );
360 if (!lutFile.
empty())
364 errMsg<<
"ERROR ossimChipProcUtil ["<<__LINE__<<
"] Color table <"<<lutFile
365 <<
"> does not exists: "<<ends;
403 xmsg <<
"ossimChipProcUtil:"<<__LINE__<<
"Null pointer encountered for m_procChain!";
409 xmsg <<
"ossimChipProcUtil:"<<__LINE__<<
"Image size is NaN!";
424 throw ossimException(
"Unable to initialize writer for execution" );
435 xmsg <<
"ossimChipProcUtil:"<<__LINE__<<
"Writer Process aborted!";
482 if (!geo_bounding_grect.
hasNans())
485 "provided. Using full AOI."<<endl;
574 entryIndex = globalEntryValue;
581 errMsg<<
"ERROR: ossimChipProcUtil ["<<__LINE__<<
"] Could not open <"<<f<<
">"<<ends;
586 std::vector<ossim_uint32> bandList(0);
588 if ( bandList.size() )
601 if (!chain->
open(fname))
604 errMsg<<
"ERROR: ossimChipProcUtil ["<<__LINE__<<
"] Could not open <"<<fname<<
">"<<ends;
614 errMsg <<
" ERROR: ossimChipProcUtil ["<<__LINE__<<
"] Entry " << entry_index <<
" out of range!" << std::endl;
624 chain->
add(remapper.
get());
635 std::vector<ossimGpt> points;
637 if(points.size() >= 3)
669 cout<<key.str()<<endl;
678 errMsg <<
"ossimChipProcUtil ["<<__LINE__<<
"] Could not open DEM file: <" << f <<
">";
690 static const char* MODULE =
"ossimChipProcUtil::createOutputProjection()";
697 << MODULE <<
" WARNING:" 699 <<
" keywords are set!" 701 <<
"\noutput_projection: " << op
702 <<
"\nTaking " << srs <<
" over " << op <<
"\n";
712 if ( (op ==
"geo") || (srs.
contains(
"4326")))
720 throw ossimException(
"ossimChipProcUtil::createOutputProjection() -- Bad EPSG code passed.");
722 else if (op ==
"geo-scaled")
727 else if ( ( op ==
"input" ) || (op ==
"identity") || (op ==
"none") )
730 else if ( (op ==
"utm") || (op ==
"ossimutmprojection") )
778 output_proj = output_utm.
get();
818 bool setZone =
false;
823 if ( (zone > 0 ) && ( zone < 61 ) )
830 bool setHemisphere =
false;
835 if ( ( h ==
"N" ) || ( h ==
"NORTH" ) || ( h ==
"S" ) || ( h ==
"SOUTH" ) )
838 setHemisphere =
true;
842 if ( !setZone || !setHemisphere )
849 if ( !setHemisphere )
875 std::vector< ossimRefPtr<ossimSingleImageChain> >::iterator chainIdx =
m_imgLayers.begin();
883 gsd.
y = gsd.
x = gsd.
mean();
895 std::vector<ossimFilename>::iterator demFile =
m_demSources.begin();
899 if (geom.
open(*demFile))
903 gsd.
y = gsd.
x = gsd.
mean();
967 if ( (imageSize.
x > 0)&& (imageSize.
y > 0 ) )
976 double dlat = sizeMeters.
y/metersPerDegree.y/2.0;
977 double dlon = sizeMeters.
x/metersPerDegree.x/2.0;
987 double dlat = sizeMeters.
y/metersPerDegree.y/2.0;
988 double dlon = sizeMeters.
x/metersPerDegree.x/2.0;
1000 vector<ossimString> substrings = lookup.
split(
" ");
1001 if (substrings.size() != 4)
1004 errMsg <<
"ossimChipProcUtil ["<<__LINE__<<
"] Incorrect number of values specified for " 1015 if ( minLatF > maxLatF )
1026 ossimGpt lrgpt (minLatF , maxLonF);
1030 if ( (imageSize.
x > 0) && (imageSize.
y > 0) )
1034 if (mapProj.
valid())
1037 gsd.
x = std::fabs( maxLonF - minLonF ) / imageSize.
x;
1038 gsd.
y = std::fabs( maxLatF - minLatF ) / imageSize.
y;
1048 if (mapProj.
valid())
1052 vector<ossimString> substrings = lookup.
split(
", ",
true);
1053 if (substrings.size() != 4)
1056 errMsg <<
"ossimChipProcUtil ["<<__LINE__<<
"] Incorrect number of values specified for " 1087 if ( (imageSize.
x > 0) && (imageSize.
y > 0) )
1091 if (mapProj.
valid())
1094 gsd.
x = std::fabs( maxX - minX ) / imageSize.
x;
1095 gsd.
y = std::fabs( maxY - minY ) / imageSize.
y;
1125 bool snapToTP =
false;
1138 bool found_spec =
false;
1140 if ( lookup.
size() )
1143 if ( (gpt.
lat < -90) || (gpt.
lat > 90.0) )
1145 std::string errMsg =
"origin latitude range error! Valid range: -90 to 90";
1153 if ( lookup.
size() )
1156 if ( (gpt.
lon < -180.0) || (gpt.
lon > 180.0) )
1158 std::string errMsg =
"central meridian range error! Valid range: -180 to 180";
1173 vector<ossimString> substrings = lookup.
split(
", ");
1174 if (substrings.size() != 2)
1177 errMsg <<
"ossimChipProcUtil ["<<__LINE__<<
"] Incorrect number of values specified for " 1181 gpt.
lat = substrings[0].toDouble();
1182 gpt.
lon = substrings[1].toDouble();
1190 vector<ossimString> substrings = lookup.
split(
", ");
1191 if (substrings.size() != 4)
1194 errMsg <<
"ossimChipProcUtil ["<<__LINE__<<
"] Incorrect number of values specified for " 1202 gpt.
lat = 0.5*(minLatF + maxLatF);
1203 gpt.
lon = 0.5*(minLonF + maxLonF);
1216 std::vector< ossimRefPtr<ossimSingleImageChain> >::iterator chain =
m_imgLayers.begin();
1219 geom = (*chain)->getImageGeometry();
1237 std::vector<ossimFilename>::iterator dem_file =
m_demSources.begin();
1241 if (!geom->
open(*dem_file))
1244 <<
"ossimHLZUtil::initialize ERR: Cannot open DEM file <" << *dem_file <<
"> " 1245 "as image handler. Ignoring entry for bounding box computation.\n" << std::endl;
1261 else if (!bbox_dems.
hasNans())
1277 halfDpp = halfDpp/2.0;
1308 std::vector< ossimRefPtr<ossimSingleImageChain> >::iterator chainIdx =
m_imgLayers.begin();
1311 viewVisitor.reset();
1312 eventVisitor.reset();
1313 (*chainIdx)->accept(viewVisitor);
1314 (*chainIdx)->accept(eventVisitor);
1316 if (resampler.
valid())
1337 std::vector<ossimString> splitArray;
1338 value.
split(splitArray,
"=");
1339 if(splitArray.size() == 2)
1352 std::vector<ossim_uint32>& bandList )
const 1366 std::vector<ossimString> band_list(0);
1368 if ( band_list.size() )
1370 std::vector<ossimString>::const_iterator i = band_list.begin();
1371 while ( i != band_list.end() )
1376 bandList.push_back( band - 1 );
1400 vector<ossimFilename>::iterator fname_iter =
m_demSources.begin();
1406 xmsg<<
"ossimChipProcUtil:"<<__LINE__<<
" Cannot open DEM file at <"<<*fname_iter<<
">";
1415 elevChains.push_back(connectable);
1419 if (elevChains.size() == 1)
1433 if ( layerCount == 1 )
1435 combiner = layers[0].
get();
1437 else if (layerCount > 1)
1440 std::vector< ossimRefPtr<ossimSingleImageChain> >::iterator chainIdx = layers.begin();
1441 while ( chainIdx != layers.end() )
1455 if ( lookup.
size() )
1458 if ( !writer.
valid() )
1461 errMsg <<
"ossimChipProcUtil ["<<__LINE__<<
"] ERROR creating writer for <"<<lookup<<
">" 1471 if ( !writer.
valid() )
1474 errMsg <<
"ossimChipProcUtil ["<<__LINE__<<
"] ERROR creating writer from extension <" 1490 if ( lookup.
size() )
1492 std::vector<ossimString> splitArray;
1493 lookup.
split(splitArray,
"=");
1494 if(splitArray.size() == 2)
1506 if ( lookup.
size() )
1510 if ( (tileSize.
x % 16) == 0 )
1512 tileSize.
y = tileSize.
x;
1533 au->
addCommandLineOption(
"--aoi-geo-bbox",
"<min-lat> <min-lon> <max-lat> <max-lon>\nSpecify a comma-separated list for the lower-left and upper-right corners of the scene rect in decimal degrees.");
1534 au->
addCommandLineOption(
"--aoi-geo-center",
"<lat> <lon>\nCenter of AOI in decimal degrees.");
1535 au->
addCommandLineOption(
"--aoi-map-bbox",
"<min-x> <min-y> <max-x> <max-y>\nSpecify a space-separated list for the upper-left and lower-right corners of the scene rect in decimal degrees.");
1537 au->
addCommandLineOption(
"--aoi-size-pixels",
"<dx> <dy>,\nSize of AOI in output product pixels.");
1539 au->
addCommandLineOption(
"-b or --bands <n,n...>",
"Use the specified bands in given order: e.g. \"3,2,1\" will select bands 3, 2 and 1 of the input image.\nNote: it is 1 based" );
1540 au->
addCommandLineOption(
"--central-meridian",
"<lon>\nNote if set this will be used for the central meridian of the projection. This can be used to lock the utm zone.");
1541 au->
addCommandLineOption(
"--color-table | --lut",
"<color-table.kwl>\nKeyword list containing color table for color-relief option.");
1542 au->
addCommandLineOption(
"--deg-per-pixel",
"<dpp_xy> | <dpp_x> <dpp_y>\nSpecifies an override for degrees per pixel. Takes either a single value applied equally to x and y directions, or two values applied correspondingly to x then y. This option takes precedence over the \"--meters\" option.");
1543 au->
addCommandLineOption(
"--dem",
"<file1>[,<file2>...]\n Input DEM file(s) (comma-separated) to process.");
1544 au->
addCommandLineOption(
"--dump-options",
"The current state of the utility (after the entire command line is parsed) is written to the file $PWD/<utility>.kwl, where <utility> is the name of the operation being performed. See \"--load-options\".");
1545 au->
addCommandLineOption(
"-e or --entry",
"<entry> For multi image handlers which entry do you wish to extract. For list of entries use: \"ossim-info -i <your_image>\" ");
1548 au->
addCommandLineOption(
"--hemisphere",
"<hemisphere>\nSpecify a projection hemisphere if supported. E.g. UTM projection. This will lock the hemisphere even if input scene center is the other hemisphere. Valid values for UTM are \"N\" and \"S\"");
1549 au->
addCommandLineOption(
"--image | -i",
"<file1>[, <file2>...] Input image file(s) (comma-separated) to process.");
1550 au->
addCommandLineOption(
"--load-options",
"[<filename>]\nThe contents of <filename> (keyword-value pairs) are loaded as command options. The command-line options take precedence. See \"--load-options\" and \"--write-template\" options.");
1551 au->
addCommandLineOption(
"--output-file | -o",
"<filename>\nThe product output file name. The format is dictated by the extension.");
1552 au->
addCommandLineOption(
"--origin-latitude",
"<latidude_in_decimal_degrees>\nNote if set this will be used for the origin latitude of the projection. Setting this to something other than 0.0 with a geographic projection creates a scaled geographic projection.");
1553 au->
addCommandLineOption(
"--output-radiometry",
"<R>\nSpecifies the desired product's pixel radiometry type. Possible values for <R> are: U8, U11, U16, S16, F32. Note this overrides the deprecated option \"scale-to-8-bit\".");
1554 au->
addCommandLineOption(
"--projection",
"<output_projection> Valid projections: geo, geo-scaled, input or utm\ngeo = Equidistant Cylindrical, origin latitude = 0.0\ngeo-scaled = Equidistant Cylindrical, origin latitude = image center\ninput Use first images projection. Must be a map projecion.\nutm = Universal Tranverse Mercator\nIf input and multiple sources the projection of the first image will be used.\nIf utm the zone will be set from the scene center of first image.\nNOTE: --srs takes precedence over this option.");
1555 au->
addCommandLineOption(
"--reader-prop",
"<string>Adds a property to send to the reader. format is name=value");
1556 au->
addCommandLineOption(
"--scale-to-8-bit",
"Scales the output to unsigned eight bits per band. This option has been deprecated by the newer \"--output-radiometry\" option.");
1557 au->
addCommandLineOption(
"--snap-tie-to-origin",
"Snaps tie point to projection origin so that (tie-origin)/gsd come out on an even integer boundary.");
1558 au->
addCommandLineOption(
"--srs",
"<src_code>\nSpecify a spatial reference system(srs) code for the output projection. Example: --srs EPSG:4326");
1559 au->
addCommandLineOption(
"-t or --thumbnail",
"<max_dimension>\nSpecify a thumbnail resolution.\nScale will be adjusted so the maximum dimension = argument given.");
1560 au->
addCommandLineOption(
"--tile-size",
"<size_in_pixels>\nSets the output tile size if supported by writer. Notes: This sets both dimensions. Must be a multiple of 16, e.g. 1024.");
1561 au->
addCommandLineOption(
"-w or --writer",
"<writer>\nSpecifies the output writer. Default uses output file extension to determine writer. For valid output writer types use: \"ossim-info --writers\"\n");
1562 au->
addCommandLineOption(
"--writer-prop",
"<writer-property>\nPasses a name=value pair to the writer for setting it's property. Any number of these can appear on the line.");
1563 au->
addCommandLineOption(
"--write-template",
"<filename>\nWrites a keywrd list template to the filename specified.");
1564 au->
addCommandLineOption(
"--zone",
"<zone>\nSpecify a projection zone if supported. E.g. UTM projection. This will lock the zone even if input scene center is in another zone. Valid values for UTM are \"1\" to \"60\"");
void getBoundingGroundRect(ossimGrect &bounding_grect) const
void setRectangle(const ossimIrect &rect)
virtual double getMeanSpacingMeters() const
Returns the mean post spacing (in meters) for the highest resolution DEM in the list or NaN if no DEM...
std::string getApplicationName() const
return the application name, as specified by argv[0]
void addCommandLineOption(const ossimString &option, const ossimString &explanation)
virtual ossimObject * dup() const =0
ossimString before(const ossimString &str, std::string::size_type pos=0) const
METHOD: before(str, pos) Returns string beginning at pos and ending one before the token str If strin...
double mean() const
Returns the average of x and y.
static const char * PROJECTION_KW
void setProjection(ossimProjection *projection)
Sets the projection to be used for local-to-world coordinate transformation.
virtual ossimRefPtr< ossimImageData > getTile(const ossimIrect &tileRect, ossim_uint32 resLevel=0)
Within the image chain will pass the head of the list.
static ossimString upcase(const ossimString &aString)
ossim_uint32 numberOf(const char *str) const
std::basic_ostringstream< char > ostringstream
Class for char output memory streams.
static const char * OUTPUT_FILE_KW
const ossimIpt & getImageSize() const
static const char * CENTRAL_MERIDIAN_KW
Represents serializable keyword/value map.
bool addFile(const char *file)
const std::string & findKey(const std::string &key) const
Find methods that take std::string(s).
ossimRefPtr< const ossimImageHandler > getImageHandler() const
static const ossimErrorCode OSSIM_OK
void addResampler()
Adds a resampler (a.k.a.
const char * find(const char *key) const
virtual bool addListener(ossimListener *listener)
Overrides base "addListener" this will capture the pointer and then call the base class "addListener"...
void addOptions(ossimArgumentParser &parser)
const ossimMapProjection * getAsMapProjection() const
bool read(const std::string &str)
search for an occurance of a string in the argument list, on sucess remove that occurance from the li...
const ossimDpt & ul() const
virtual void setOrigin(const ossimGpt &origin)
Sets theOrigin to origin.
bool contains(char aChar) const
bool hasKey(const std::string &key) const
Checks for key in map.
virtual void initialize()
virtual void propagateEventToOutputs(ossimEvent &event)
static ossimImageWriterFactoryRegistry * instance()
void addList(const ossimKeywordlist &src, bool overwrite=true)
Visitor to update view and then propagate property event to outputs.
static ossimString toString(bool aValue)
Numeric to string methods.
virtual void setTileSize(const ossimIpt &tileSize)
Sets the output image tiling size if supported by the writer.
void split(std::vector< ossimString > &result, const ossimString &separatorList, bool skipBlankFields=false) const
Splits this string into a vector of strings (fields) using the delimiter list specified.
void addPair(const std::string &key, const std::string &value, bool overwrite=true)
ossim_float64 hgt
Height in meters above the ellipsiod.
virtual void setDecimalDegreesPerPixel(const ossimDpt &gsd)
ossim_uint32 toUInt32() const
static ossimElevManager * instance()
METHOD: instance() Implements singelton pattern.
ossimDpt getDegreesPerPixel() const
Returns the resolution of this image in degrees/pixel.
ossimApplicationUsage * getApplicationUsage()
virtual void setProperty(ossimRefPtr< ossimProperty > property)
void setImageSize(const ossimIpt &size)
An image mosaic is a simple combiner that will just do a simple mosaic.
virtual bool write(const char *file, const char *comment=0) const
Methods to dump the ossimKeywordlist to a file on disk.
virtual ossimGpt inverse(const ossimDpt &projectedPoint) const =0
Will take a point in meters and convert it to ground.
void getCellsForBounds(const std::string &connectionString, const ossim_float64 &minLat, const ossim_float64 &minLon, const ossim_float64 &maxLat, const ossim_float64 &maxLon, std::vector< ossimFilename > &cells, ossim_uint32 maxNumberOfCells=0)
Gets a list of elevation cells needed to cover bounding box.
void setBandSelection(const std::vector< ossim_uint32 > &bandList)
method to set band selector.
Single image chain class.
virtual void setMetersPerPixel(const ossimDpt &gsd)
void expandToInclude(const ossimGpt &gpt)
Expands existing rect to accommodate argument point.
virtual ossimScalarType getOutputScalarType() const
This call is passed to the head of the list.
ossim_int32 toInt32() const
void reportRemainingOptionsAsUnrecognized(ossimErrorSeverity severity=OSSIM_BENIGN)
for each remaining option report it as an unrecongnized.
bool open(const ossimFilename &image)
Shortcut way of getting to an image's geometry when access to pixels is not needed.
void add(const char *prefix, const ossimKeywordlist &kwl, bool overwrite=true)
void setCutType(ossimRectangleCutType cutType)
static const char * ZONE_KW
static ossimScalarTypeLut * instance()
Returns the static instance of an ossimScalarTypeLut object.
std::vector< ossimRefPtr< ossimConnectableObject > > ConnectableObjectList
bool errors(ossimErrorSeverity severity=OSSIM_BENIGN) const
virtual void setOutputScalarType(ossimScalarType scalarType)
Sets the output scalar type.
OSSIM_DLL void toVector(std::vector< ossimDpt > &result, const ossimString &stringOfPoints)
Will take a string list separated by spaces and convert to a vector of ossimDpts. ...
virtual ossimRefPtr< ossimImageGeometry > getImageGeometry()
Returns the image geometry object associated with this tile source or NULL if non defined...
std::string::size_type size() const
virtual double getHeightAboveEllipsoid(const ossimGpt &gpt)
ossimGrect clipToRect(const ossimGrect &rect) const
void setLut(const ossimFilename &file)
Set lookup table(lut) method.
unsigned int ossim_uint32
const char * chars() const
For backward compatibility.
ossimDpt getMetersPerPixel() const
Returns the GSD associated with this image in the active projection.
ossimString trim(const ossimString &valueToTrim=ossimString(" \\)) const
this will strip lead and trailing character passed in.
ossim_float64 toFloat64() const
const ossimGpt & ul() const
bool loadElevationPath(const ossimFilename &path, bool set_as_first=false)
Adds a new elevation file (or multiple files if path is a directory) to the collection.
virtual bool add(ossimConnectableObject *source)
Will return true or false if an image source was added to the chain.
static ossimString downcase(const ossimString &aString)
virtual ossim_int32 connectMyInputTo(ossimConnectableObject *inputObject, bool makeOutputConnection=true, bool createEventFlag=true)
Will try to connect this objects input to the passed in object.
bool getBoolKeywordValue(bool &rtn_val, const char *keyword, const char *prefix=0) const
[OLK, Aug/2008] Sets the boolean <rtn_val> depending on value associated with keyword for values = (y...
static const char * BANDS_KW
ossimRefPtr< ossimCacheTileSource > addCache()
Adds a new cache to the current end of the chain.
Container class that holds both 2D transform and 3D projection information for an image Only one inst...
ossimGpt midPoint() const
void setZone(const ossimGpt &ground)
static ossimProjectionFactoryRegistry * instance()
static const char * ORIGIN_LATITUDE_KW
static const char * ENTRY_KW
virtual ossimIrect getBoundingRect(ossim_uint32 resLevel=0) const
Will pass this call to the head of the list.
virtual void setFilename(const ossimFilename &file)
void snapTiePointToOrigin()
const ossimProjection * getProjection() const
Access methods for projection (may be NULL pointer).
This class defines an abstract Handler which all image handlers(loaders) should derive from...
virtual void setProperty(ossimRefPtr< ossimProperty > property)
virtual ossimErrorCode getErrorStatus() const
virtual void setAreaOfInterest(const ossimIrect &inputRect)
static const char * HEMISPHERE_KW
bool open(const ossimFilename &file, bool openOverview=true)
open method that takes an image file.
ossim_int32 getZone() const
static ossimInit * instance()
ossimImageFileWriter * createWriter(const ossimFilename &filename) const
virtual void setUlTiePoints(const ossimGpt &gpt)
bool worldToLocal(const ossimGpt &world_pt, ossimDpt &local_pt) const
Exposes the 3D world-to-local image coordinate reverse projection.
ossimDpt metersPerDegree() const
ossimRefPtr< const ossimImageRenderer > getImageRenderer() const
ossimString & gsub(const ossimString &searchKey, const ossimString &replacementValue, bool replaceAll=false)
Substitutes searchKey string with replacementValue and returns a reference to *this.
char getHemisphere() const
static const char * IMAGE_FILE_KW
ossimFilename & setExtension(const ossimString &e)
Sets the extension of a file name.
ossimString after(const ossimString &str, std::string::size_type pos=0) const
METHOD: after(str, pos) Returns string immediately after the token str.
virtual bool removeListener(ossimListener *listener)
Overrides base "removeListener".
virtual bool setCurrentEntry(ossim_uint32 entryIdx)
void setElevationLookupFlag(bool flag)
static const char * ELEVATION_SOURCE_KW
const ossimDpt & lr() const
const ossimGpt & lr() const
int & argc()
return the argument count.
void setHemisphere(const ossimGpt &ground)
void setExpandEnvVarsFlag(bool flag)
virtual bool setView(ossimObject *baseObject)
OSSIMDLLEXPORT std::ostream & ossimNotify(ossimNotifyLevel level=ossimNotifyLevel_WARN)
virtual bool execute()
Calls: writeFile() writeMetaDataFiles()
void addGeoPolyCutterPolygon(const vector< ossimGpt > &polygon)
void writeErrorMessages(std::ostream &output, ossimErrorSeverity sevrity=OSSIM_BENIGN)
write out error messages at an above specified .
const std::string & string() const