29#ifndef vtkGeoProjection_h
30#define vtkGeoProjection_h
32#include "vtkGeovisCoreModule.h"
36typedef struct PJconsts
PJ;
71 vtkSetStringMacro(Name);
72 vtkGetStringMacro(Name);
92 vtkSetMacro(CentralMeridian,
double);
93 vtkGetMacro(CentralMeridian,
double);
146 vtkSetStringMacro(PROJ4String);
147 vtkGetStringMacro(PROJ4String);
173 vtkInternals* Internals;
Represent a projection from a sphere to a plane.
int GetIndex()
Return the index of the current projection's type in the list of all projection types.
virtual int UpdateProjection()
Determine whether the current projection structure has any changes pending and apply them if necessar...
void SetOptionalParameter(const char *key, const char *value)
Add an optional parameter to the projection that will be computed or replace it if already present.
~vtkGeoProjection() override
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static int GetNumberOfProjections()
Returns the number of projections that this class offers.
void RemoveOptionalParameter(const char *)
Remove an optional parameter to the projection that will be computed.
static const char * GetProjectionName(int projection)
Returns the name of one of the projections supported by this class.
vtkMTimeType ProjectionMTime
const char * GetDescription()
Get the description of a projection.
void ClearOptionalParameters()
Clear all optional parameters.
static const char * GetProjectionDescription(int projection)
Returns a description of one of the projections supported by this class.
int GetNumberOfOptionalParameters()
Return the number of optional parameters.
static vtkGeoProjection * New()
const char * GetOptionalParameterValue(int index)
Return the number of optional parameters.
projPJ GetProjection()
Return a pointer to the PROJ.4 data structure describing this projection.
const char * GetOptionalParameterKey(int index)
Return the number of optional parameters.
a simple class to control print indentation
abstract base class for most VTK objects
vtkTypeUInt32 vtkMTimeType