VTK
dox/Geovis/Core/vtkGeoTerrain2D.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkGeoTerrain2D.h
00005 
00006   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007   All rights reserved.
00008   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00009 
00010      This software is distributed WITHOUT ANY WARRANTY; without even
00011      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012      PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00015 /*-------------------------------------------------------------------------
00016   Copyright 2008 Sandia Corporation.
00017   Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
00018   the U.S. Government retains certain rights in this software.
00019 -------------------------------------------------------------------------*/
00035 #ifndef __vtkGeoTerrain2D_h
00036 #define __vtkGeoTerrain2D_h
00037 
00038 #include "vtkGeovisCoreModule.h" // For export macro
00039 #include "vtkGeoTerrain.h"
00040 
00041 class vtkAbstractTransform;
00042 class vtkAssembly;
00043 class vtkCollection;
00044 class vtkGeoImageRepresentation;
00045 class vtkGeoSource;
00046 class vtkGeoTerrainNode;
00047 class vtkRenderer;
00048 
00049 class VTKGEOVISCORE_EXPORT vtkGeoTerrain2D : public vtkGeoTerrain
00050 {
00051 public:
00052   static vtkGeoTerrain2D *New();
00053   vtkTypeMacro(vtkGeoTerrain2D,vtkGeoTerrain);
00054   virtual void PrintSelf(ostream& os, vtkIndent indent);
00055 
00057 
00059   vtkSetMacro(TextureTolerance, double);
00060   vtkGetMacro(TextureTolerance, double);
00062 
00064 
00066   vtkSetMacro(LocationTolerance, double);
00067   vtkGetMacro(LocationTolerance, double);
00069 
00071   virtual vtkAbstractTransform* GetTransform();
00072 
00073 protected:
00074   vtkGeoTerrain2D();
00075   ~vtkGeoTerrain2D();
00076 
00077   double LocationTolerance;
00078   double TextureTolerance;
00079 
00081   virtual void InitializeNodeAnalysis(vtkRenderer* ren);
00082 
00085   virtual bool NodeInViewport(vtkGeoTerrainNode* node);
00086 
00089   virtual int EvaluateNode(vtkGeoTerrainNode* node);
00090 
00091   double CameraBounds[4];
00092   double PixelSize;
00093 
00094 private:
00095   vtkGeoTerrain2D(const vtkGeoTerrain2D&); // Not implemented
00096   void operator=(const vtkGeoTerrain2D&); // Not implemented
00097 };
00098 
00099 #endif