11 #ifndef vtkGeoJSONFeature_h
12 #define vtkGeoJSONFeature_h
16 #include "vtkIOGeoJSONModule.h"
17 #include "vtk_jsoncpp.h"
19 VTK_ABI_NAMESPACE_BEGIN
23 #define GeoJSON_POINT "Point"
24 #define GeoJSON_MULTI_POINT "MultiPoint"
25 #define GeoJSON_LINE_STRING "LineString"
26 #define GeoJSON_MULTI_LINE_STRING "MultiLineString"
27 #define GeoJSON_POLYGON "Polygon"
28 #define GeoJSON_MULTI_POLYGON "MultiPolygon"
29 #define GeoJSON_GEOMETRY_COLLECTION "GeometryCollection"
49 vtkSetMacro(OutlinePolygons,
bool);
50 vtkGetMacro(OutlinePolygons,
bool);
51 vtkBooleanMacro(OutlinePolygons,
bool);
58 void ExtractGeoJSONFeature(
const Json::Value& root,
vtkPolyData* outputData);
84 void ExtractGeoJSONFeatureGeometry(
const Json::Value& root,
vtkPolyData* outputData);
109 bool IsPoint(
const Json::Value& root);
110 bool IsMultiPoint(
const Json::Value& root);
111 bool IsLineString(
const Json::Value& root);
112 bool IsMultiLineString(
const Json::Value& root);
113 bool IsPolygon(
const Json::Value& root);
114 bool IsMultiPolygon(
const Json::Value& root);
120 bool CreatePoint(
const Json::Value& coordinates,
double point[3]);
122 void InsertFeatureProperties(
vtkPolyData* outputData);
129 VTK_ABI_NAMESPACE_END
130 #endif // vtkGeoJSONFeature_h
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static vtkDataObject * New()
concrete dataset represents vertices, lines, polygons, and triangle strips
int GetDataObjectType() override
Returns VTK_GEO_JSON_FEATURE.
Represents GeoJSON feature geometry & properties.
bool OutlinePolygons
Set/get option to generate the border outlining each polygon, so that the output cells are polyine da...
a simple class to control print indentation
char * FeatureId
Id of current GeoJSON feature being parsed.
#define VTK_GEO_JSON_FEATURE
Json::Value featureRoot
Json::Value featureRoot corresponds to the root of the geoJSON feature from which the geometry and pr...
general representation of visualization data