OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
Functions
dem-test.cpp File Reference
#include <cmath>
#include <memory>
#include <sstream>
#include <iostream>
#include <ossim/base/ossimApplicationUsage.h>
#include <ossim/base/ossimArgumentParser.h>
#include <ossim/base/ossimConnectableObject.h>
#include <ossim/base/ossimCsvFile.h>
#include <ossim/base/ossimDpt.h>
#include <ossim/base/ossimDrect.h>
#include <ossim/base/ossimException.h>
#include <ossim/base/ossimIrect.h>
#include <ossim/base/ossimNotify.h>
#include <ossim/base/ossimObjectFactoryRegistry.h>
#include <ossim/base/ossimScalarTypeLut.h>
#include <ossim/base/ossimStdOutProgress.h>
#include <ossim/base/ossimStreamFactoryRegistry.h>
#include <ossim/base/ossimVisitor.h>
#include <ossim/base/ossimEcefPoint.h>
#include <ossim/base/ossimEcefVector.h>
#include <ossim/base/ossim2dBilinearTransform.h>
#include <ossim/imaging/ossimNitfTileSource.h>
#include <ossim/imaging/ossimBrightnessContrastSource.h>
#include <ossim/imaging/ossimImageFileWriter.h>
#include <ossim/imaging/ossimImageRenderer.h>
#include <ossim/imaging/ossimImageWriterFactoryRegistry.h>
#include <ossim/imaging/ossimIndexToRgbLutFilter.h>
#include <ossim/imaging/ossimImageSourceFactoryRegistry.h>
#include <ossim/imaging/ossimImageHandlerRegistry.h>
#include <ossim/init/ossimInit.h>
#include <ossim/projection/ossimEquDistCylProjection.h>
#include <ossim/base/Thread.h>
#include <ossim/projection/ossimNitfRpcModel.h>
#include <ossim/projection/ossimQuickbirdRpcModel.h>
#include <json/json.h>
#include <dem/src/ossimDemTool.h>

Go to the source code of this file.

Functions

int main (int argc, char *argv[])
 

Function Documentation

◆ main()

int main ( int  argc,
char *  argv[] 
)

Definition at line 57 of file dem-test.cpp.

References ossimInit::addOptions(), ossimDemTool::execute(), ossimInit::initialize(), ossimInit::instance(), ossimDemTool::loadJSON(), ossimNotify(), ossimNotifyLevel_WARN, ossimString::string(), and ossimException::what().

58 {
59  int returnCode = 0;
60 
61  ossimArgumentParser ap(&argc, argv);
64 
65  if (argc < 3)
66  {
67  cout<<"\nUsage: "<<argv[0]<<"<image-A> <image-B>\n"<<endl;
68  exit(0);
69  }
70 
71  try
72  {
73  ossimFilename imageA (argv[1]);
74  ossimFilename imageB (argv[2]);
75 
76  Json::Value rootJson;
77  rootJson["algorithm"] = "omg";
78  rootJson["method"] = "generate";
79  rootJson["filename"] = "dem-test-output.tif";
80  rootJson["postSpacing"] = 1.0;
81  rootJson["postSpacingUnits"] = "meters";
82 
83  Json::Value imagesJson;
84  Json::Value imageAJson;
85  imageAJson["filename"] = imageA.string();
86  imagesJson[0] = imageAJson;
87  Json::Value imageBJson;
88  imageBJson["filename"] = imageB.string();
89  imagesJson[1] = imageBJson;
90 
91  Json::Value pbJson;
92  pbJson["images"] = imagesJson;
93  rootJson["photoblock"] = pbJson;
94 
95  cout<<"Input JSON:\n"<<rootJson<<endl;
96 
97  ossimDemTool demTool;
98  demTool.loadJSON(rootJson);
99 
100  demTool.execute();
101  }
102  catch(const ossimException& e)
103  {
104  ossimNotify(ossimNotifyLevel_WARN) << e.what() << std::endl;
105  returnCode = 1;
106  }
107  catch( ... )
108  {
110  << argv[0] <<" caught unhandled exception!" << std::endl;
111  returnCode = 1;
112  }
113 
114  return returnCode;
115 }
void initialize(int &argc, char **argv)
Definition: ossimInit.cpp:119
void addOptions(ossimArgumentParser &parser)
Definition: ossimInit.cpp:100
bool execute() override
Writes product to output file if applicable.
virtual const char * what() const
Returns the error message.
static ossimInit * instance()
Definition: ossimInit.cpp:89
OSSIMDLLEXPORT std::ostream & ossimNotify(ossimNotifyLevel level=ossimNotifyLevel_WARN)
void loadJSON(const Json::Value &json) override
Reads processing params from JSON object provided.