22 #include <boost/program_options.hpp> 41 namespace po = boost::program_options;
44 int main (
int argc,
char** argv) {
45 po::options_description desc(
"Allowed options");
47 (
"help,h",
"produce help message")
50 po::options_description required(
"Required");
51 required.add_options()
52 (
"source-file,s", po::value<string>(),
"source file")
53 (
"target-file,t", po::value<string>(),
"target file");
56 po::options_description optional(
"Optional");
57 optional.add_options()
58 (
"object-type,o", po::value<string>(),
"Object type")
59 (
"object-id,i", po::value<string>(),
"Object id");
64 po::store(po::parse_command_line(argc, argv, desc), vm);
67 if (vm.count(
"help") || !vm.count(
"source-file") || !vm.count(
"target-file")) {
75 bool useMapFrame =
false;
76 if (!vm.count(
"object-type") || !vm.count(
"object-id")) {
77 cout <<
"object-type/object-id are not set" << endl;
78 cout <<
"!!!!!!!Reference object is map frame!!!!!!!" << endl;
81 objectType = vm[
"object-type"].as<
string>();
82 objectId = vm[
"object-id"].as<
string>();
85 string sourceFile = vm[
"source-file"].as<
string>();
86 string targetFile = vm[
"target-file"].as<
string>();
88 vector<string> rotationInvariantTypes;
89 rotationInvariantTypes.push_back(
"Cup");
90 rotationInvariantTypes.push_back(
"PlateDeep");
int main(int argc, char **argv)
void rotateRotationInvariantObjects(const std::string &sourceFile, const std::string &targetFile, const std::string &objectType, const std::string &objectId, bool useMapFrame, const std::vector< std::string > &rotationInvariantTypes)
this namespace contains all generally usable classes.