v0.2.52..v0.2.53 changeset GeometryTypeCriterion.cpp
Garret Voltz edited this page Feb 12, 2020
·
1 revision
diff --git a/hoot-core/src/main/cpp/hoot/core/criterion/GeometryTypeCriterion.cpp b/hoot-core/src/main/cpp/hoot/core/criterion/GeometryTypeCriterion.cpp
index bf58f46..c117965 100644
--- a/hoot-core/src/main/cpp/hoot/core/criterion/GeometryTypeCriterion.cpp
+++ b/hoot-core/src/main/cpp/hoot/core/criterion/GeometryTypeCriterion.cpp
@@ -22,7 +22,7 @@
* This will properly maintain the copyright information. DigitalGlobe
* copyrights will be updated automatically.
*
- * @copyright Copyright (C) 2019 DigitalGlobe (http://www.digitalglobe.com/)
+ * @copyright Copyright (C) 2019, 2020 DigitalGlobe (http://www.digitalglobe.com/)
*/
#include "GeometryTypeCriterion.h"
@@ -66,7 +66,29 @@ QString GeometryTypeCriterion::typeToString(const GeometryType& geometryType)
case GeometryType::Polygon:
return "polygon";
default:
- throw IllegalArgumentException("Invalid geometry type.");
+ return "unknown";
+ }
+}
+
+GeometryTypeCriterion::GeometryType GeometryTypeCriterion::typeFromString(
+ const QString& geometryTypeStr)
+{
+ const QString compareVal = geometryTypeStr.toLower();
+ if (compareVal == "point")
+ {
+ return GeometryType::Point;
+ }
+ else if (compareVal == "line")
+ {
+ return GeometryType::Line;
+ }
+ else if (compareVal == "polygon")
+ {
+ return GeometryType::Polygon;
+ }
+ else
+ {
+ throw GeometryType::Unknown;
}
}