int SaisieAppuisInit_main(int argc,char ** argv) { Pt2di aSzW(800,800); Pt2di aNbFen(-1,-1); std::string aFullName,aNamePt,anOri,anOut, aNameAuto, aPrefix2Add, aDir, aName, aModeOri; aNameAuto = "NONE"; aPrefix2Add = ""; bool aForceGray = true; double aZMoy,aZInc; SaisieAppuisInit(argc, argv, aSzW, aNbFen, aFullName, aDir, aName, aNamePt, anOri, aModeOri, anOut, aNameAuto, aPrefix2Add, aForceGray, aZMoy, aZInc); if (!MMVisualMode) { std::string aCom = MMDir() +"bin/SaisiePts " + MMDir() +"include/XML_MicMac/SaisieInitiale.xml " + std::string(" DirectoryChantier=") + aDir + std::string(" +Image=") + QUOTE(aName) + std::string(" +Ori=") + anOri + std::string(" +NamePt=") + aNamePt + std::string(" +NameAuto=") + aNameAuto + std::string(" +Sauv=") + anOut + std::string(" +SzWx=") + ToString(aSzW.x) + std::string(" +SzWy=") + ToString(aSzW.y) + std::string(" +NbFx=") + ToString(aNbFen.x) + std::string(" +NbFy=") + ToString(aNbFen.y) ; if (aModeOri == "GRID") { aCom += " +ModeOriIm=eGeomImageGrille" + std::string(" +Conik=false") + std::string(" +ZIncIsProp=false") //+ " +PostFixOri=GRIBin" + " +Px1Inc="+ ToString(aZInc) + std::string(" ") + " +Px1Moy="+ ToString(aZMoy) + std::string(" "); //aCom += std::string(" +Geom=eGeomMNTFaisceauIm1ZTerrain_Px1D"); } if (EAMIsInit(&aForceGray)) aCom = aCom + " +ForceGray=" + ToString(aForceGray); if (EAMIsInit(&aPrefix2Add)) aCom = aCom + " +Pref2Add=" + aPrefix2Add; std::cout << aCom << "\n"; int aRes = system(aCom.c_str()); return aRes; } else return EXIT_SUCCESS; }
int saisieAppuisInitQT_main(QApplication &app, int argc, char *argv[]) { app.setApplicationName("SaisieAppuisInitQT"); app.setOrganizationName("Culture3D"); QStringList cmdline_args = QCoreApplication::arguments(); if (cmdline_args.back().contains("help")) { QString help = "Mandatory unnamed args :\n" "* string :: {Full name (Dir+Pattern)}\n" "* string :: {Orientation ; NONE if not used}\n" "* string :: {Point name, or point file name}\n" "* string :: {Output}\n\n" "Named args :\n" "* [Name=SzW] Pt2di :: {Sz of window}\n" "* [Name=NbF] Pt2di :: {Nb of sub window}\n" "* [Name=NameAuto] string :: {Prefix for automatic point creation}\n" //"* [Name=Pref2Add] string :: {Prefix to add during import (for bug correction ?)}\n" "* [Name=ForceGray] bool :: {Force gray image, def=false}\n" "* [Name=OriMode] string :: {Orientation type (GRID) (Def=Std)}\n" "* [Name=ZMoy] REAL :: {Average Z, Mandatory in PB}\n" "* [Name=ZInc] REAL :: {Incertitude on Z, Mandatory in PB}\n\n" "Example:\nmm3d " + app.applicationName() + " IMG_558{0-9}[1].tif RadialBasic 100 measures.xml\n\n" "NB: visual interface for argument edition available with command:\n\n mm3d v" + app.applicationName() + "\n\n"; return helpMessage(app, help); } loadTranslation(app); QSettings settings(QApplication::organizationName(), QApplication::applicationName()); if ((argc>0)&&(string(argv[0]).find("SaisieQT")!= string::npos)) { argv++; argc--; } Pt2di aSzWin(800,800); Pt2di aNbFen(-1,-1); string aFullName, aDir, aName, aNamePt, aNameOut; //mandatory arguments string aNameOri, aModeOri, aNameAuto, aPrefix2Add; //named args aPrefix2Add = ""; bool aForceGray = false; settings.beginGroup("Misc"); aNameAuto = settings.value("defPtName", QString("100")).toString().toStdString(); settings.endGroup(); settings.beginGroup("Drawing settings"); aForceGray = settings.value("forceGray", false ).toBool(); settings.endGroup(); double aZInc, aZMoy; if (argv[0][0] == 'v') { MMVisualMode = true; argv[0] = (char*) "SaisieAppuisInitQT"; } std::string aInputSec; SaisieAppuisInit(argc, argv, aSzWin, aNbFen, aFullName, aDir, aName, aNamePt, aNameOri, aModeOri, aNameOut, aNameAuto, aPrefix2Add, aForceGray, aZMoy, aZInc,aInputSec); if (!MMVisualMode) { if (!checkNamePt( QString (aNamePt.c_str()))) return -1; QStringList filenames = getFilenames(aDir, aName); int aNbW = aNbFen.x * aNbFen.y; if (filenames.size() < aNbW) { aNbW = filenames.size(); cVirtualInterface::ComputeNbFen(aNbFen, aNbW); } updateSettings(settings, aSzWin,aNbFen, aForceGray); settings.beginGroup("Misc"); settings.setValue("defPtName", QString(aNameAuto.c_str())); settings.endGroup(); QStringList input; input << QString(MMDir().c_str()) + QString("bin/SaisiePts") << QString(MMDir().c_str()) + QString("include/XML_MicMac/SaisieInitiale.xml") << QString("DirectoryChantier=") + QString(aDir.c_str()) << QString("+Image=") + QString(aName.c_str()) << QString("+Ori=") + QString(aNameOri.c_str()) << QString("+NamePt=") + QString(aNamePt.c_str()) << QString("+NameAuto=") + QString(aNameAuto.c_str()) << QString("+Sauv=") + QString(aNameOut.c_str()) << QString("+SzWx=") + QString::number(aSzWin.x) << QString("+SzWy=") + QString::number(aSzWin.y) << QString("+NbFx=") + QString::number(aNbFen.x) << QString("+NbFy=") + QString::number(aNbFen.y); if (aModeOri == "GRID") { input << QString("+ModeOriIm=eGeomImageGrille") << QString("+Conik=false") << QString("+ZIncIsProp=false") //<< QString(+PostFixOri=GRIBin") << QString("+Px1Inc=") + QString::number(aZInc) << QString("+Px1Moy=") + QString::number(aZMoy); //<< QString("+Geom=eGeomMNTFaisceauIm1ZTerrain_Px1D"); } if (EAMIsInit(&aForceGray)) input << QString("+ForceGray=") + QString(((string)(ToString(aForceGray))).c_str()); if (EAMIsInit(&aPrefix2Add)) input << QString("+Pref2Add=") + QString(aPrefix2Add.c_str()); char **output; // Copy input to output output = new char*[input.size() + 1]; for (int i = 0; i < input.size(); i++) { output[i] = new char[strlen(input.at(i).toStdString().c_str())+1]; memcpy(output[i], input.at(i).toStdString().c_str(), strlen(input.at(i).toStdString().c_str())+1); } output[input.size()] = ((char*)NULL); cResultSubstAndStdGetFile<cParamSaisiePts> aP2( input.size()-2,output+2, output[1], StdGetFileXMLSpec("ParamSaisiePts.xml"), "ParamSaisiePts", "ParamSaisiePts", "DirectoryChantier", "FileChantierNameDescripteur" ); cAppli_SaisiePts anAppli (aP2,false); SaisieQtWindow w(POINT2D_INIT); new cQT_Interface(anAppli,&w); w.show(); w.addFiles(filenames, false); return app.exec(); } else return EXIT_SUCCESS; }
int SaisieAppuisPredic_main(int argc,char ** argv) { Pt2di aSzW(800,800); Pt2di aNbFen(-1,-1); std::string aFullName,aNamePt,anOri, aModeOri, aNameMesure, aDir, aName; std::string aMasq3D,aPIMsFilter; bool aForceGray = true; double aZMoy,aZInc; std::string aInputSec; double aFlou=0.0; std::string aTypePts="Pts"; SaisieAppuisPredic(argc, argv, aSzW, aNbFen, aFullName, aDir, aName, aNamePt, anOri, aModeOri, aNameMesure, aTypePts,aMasq3D,aPIMsFilter, aFlou, aForceGray, aZMoy, aZInc,aInputSec); if(!MMVisualMode) { std::string aCom = MMDir() +"bin/SaisiePts " + MMDir() +"include/XML_MicMac/SaisieAppuisPredic.xml " + std::string(" DirectoryChantier=") + aDir + std::string(" +Images=") + QUOTE(aName) + std::string(" +Ori=") + anOri + std::string(" +LargeurFlou=") + ToString(aFlou) + std::string(" +Terrain=") + aNamePt + std::string(" +Sauv=") + aNameMesure + std::string(" +SzWx=") + ToString(aSzW.x) + std::string(" +SzWy=") + ToString(aSzW.y) + std::string(" +NbFx=") + ToString(aNbFen.x) + std::string(" +NbFy=") + ToString(aNbFen.y) + std::string(" +TypePts=") + aTypePts; if (aModeOri == "GRID") { aCom += " +ModeOriIm=eGeomImageGrille" + std::string(" +Conik=false") + std::string(" +ZIncIsProp=false") //+ " +PostFixOri=GRIBin" + " +Px1Inc="+ ToString(aZInc) + std::string(" ") + " +Px1Moy="+ ToString(aZMoy) + std::string(" "); //aCom += std::string(" +Geom=eGeomMNTFaisceauIm1ZTerrain_Px1D"); } if (EAMIsInit(&aMasq3D)) aCom = aCom + std::string(" +WithMasq3D=true +Masq3D=")+aMasq3D; if (EAMIsInit(&aPIMsFilter)) aCom = aCom + std::string(" +WithPIMsFilter=true +PIMsFilter=")+aPIMsFilter; if (EAMIsInit(&aFlou)) aCom = aCom + std::string(" +FlouSpecified=true"); if (EAMIsInit(&aTypePts)) aCom = aCom + std::string(" +TypeGlobEcras=true"); if (EAMIsInit(&aForceGray)) aCom = aCom + " +ForceGray=" + ToString(aForceGray); if (EAMIsInit(&aInputSec)) { aCom = aCom + " +WithInputSec=true +InputSec=" + aInputSec + " "; } std::cout << aCom << "\n"; int aRes = system(aCom.c_str()); return aRes; } else return EXIT_SUCCESS; }