VTK
dox/Geovis/vtkGeoAdaptiveArcs.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkGeoAdaptiveArcs.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 -------------------------------------------------------------------------*/
00027 #ifndef __vtkGeoAdaptiveArcs_h
00028 #define __vtkGeoAdaptiveArcs_h
00029 
00030 #include "vtkPolyDataAlgorithm.h"
00031 
00032 class vtkDoubleArray;
00033 class vtkPolyData;
00034 class vtkRenderer;
00035 
00036 class VTK_GEOVIS_EXPORT vtkGeoAdaptiveArcs : public vtkPolyDataAlgorithm 
00037 {
00038 public:
00039   static vtkGeoAdaptiveArcs *New();
00040 
00041   vtkTypeMacro(vtkGeoAdaptiveArcs,vtkPolyDataAlgorithm);
00042   void PrintSelf(ostream& os, vtkIndent indent);
00043 
00045 
00048   vtkSetMacro(GlobeRadius, double);
00049   vtkGetMacro(GlobeRadius, double);
00051   
00053 
00057   vtkSetMacro(MaximumPixelSeparation, double);
00058   vtkGetMacro(MaximumPixelSeparation, double);
00060   
00062 
00065   vtkSetMacro(MinimumPixelSeparation, double);
00066   vtkGetMacro(MinimumPixelSeparation, double);
00068   
00070 
00071   virtual void SetRenderer(vtkRenderer *ren);
00072   vtkGetObjectMacro(Renderer, vtkRenderer);
00074   
00076   virtual unsigned long GetMTime();
00077   
00078 protected:
00079   vtkGeoAdaptiveArcs();
00080   ~vtkGeoAdaptiveArcs();
00081 
00083   int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00084   
00085   vtkRenderer *Renderer;
00086   double GlobeRadius;
00087   double MaximumPixelSeparation;
00088   double MinimumPixelSeparation;
00089   unsigned long LastInputMTime;
00090   vtkPolyData* LastInput;
00091   vtkDoubleArray* InputLatitude;
00092   vtkDoubleArray* InputLongitude;
00093   
00094 private:
00095   vtkGeoAdaptiveArcs(const vtkGeoAdaptiveArcs&);  // Not implemented.
00096   void operator=(const vtkGeoAdaptiveArcs&);  // Not implemented.
00097 };
00098 
00099 #endif