/* TerrainViewerModel.h */ // First include the required header files for the VTK classes we are using. #include "vtkPolyDataMapper.h" #include "vtkRenderWindow.h" #include "vtkRenderWindowInteractor.h" #include "vtkCamera.h" #include "vtkActor.h" #include "vtkRenderer.h" #include "vtkInteractorStyleTrackballCamera.h" #include "vtkImageReader.h" #include "vtkImageMapper.h" #include "vtkDataSetMapper.h" #include "vtkSimpleElevationFilter.h" #include "vtkImageToPolyDataFilter.h" #include "vtkJPEGReader.h" #include "vtkPlaneSource.h" #include "vtkTexture.h" #include "vtkShrinkFilter.h" #include "vtkImageDataGeometryFilter.h" #include "vtkWarpScalar.h" #include "vtkPolyDataNormals.h" #include "vtkImageShrink3D.h" #include "vtkGeometryFilter.h" #include "vtkMergeFilter.h" #include "vtkContourFilter.h" #include "vtkImageData.h" #include "vtkProperty.h" #include "vtkLODActor.h" class TerrainViewerModel { private: TerrainViewerModel( ); static TerrainViewerModel *theModel; vtkImageReader *elevReader; vtkJPEGReader *textureReader; vtkWarpScalar *warper; vtkContourFilter *contours[ 4 ]; int dataMax, dataMin; double scalingFactor; float contourHeights[ 4 ]; vtkActor *contourActors[ 4 ]; public: static TerrainViewerModel * getModel( ); void setElevationFile( char * filename ); void setTextureFile( char *filename ); void setGrayScale( void ); void setColorMap( void ); void setTextureMap( void ); void setScaling( double scaling ); void setColor( int which, int value ); int getDataMin( void ) { return dataMin; } int getDataMax( void ) { return dataMax; } };