VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkGeoSampleArcs.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 -------------------------------------------------------------------------*/ 00031 #ifndef vtkGeoSampleArcs_h 00032 #define vtkGeoSampleArcs_h 00033 00034 #include "vtkGeovisCoreModule.h" // For export macro 00035 #include "vtkPolyDataAlgorithm.h" 00036 00037 class VTKGEOVISCORE_EXPORT vtkGeoSampleArcs : public vtkPolyDataAlgorithm 00038 { 00039 public: 00040 static vtkGeoSampleArcs *New(); 00041 00042 vtkTypeMacro(vtkGeoSampleArcs,vtkPolyDataAlgorithm); 00043 void PrintSelf(ostream& os, vtkIndent indent); 00044 00046 00049 vtkSetMacro(GlobeRadius, double); 00050 vtkGetMacro(GlobeRadius, double); 00052 00054 00055 vtkSetMacro(MaximumDistanceMeters, double); 00056 vtkGetMacro(MaximumDistanceMeters, double); 00058 00059 //BTX 00060 enum 00061 { 00062 RECTANGULAR, 00063 SPHERICAL 00064 }; 00065 //ETX 00066 00068 00070 vtkSetMacro(InputCoordinateSystem, int); 00071 vtkGetMacro(InputCoordinateSystem, int); 00072 virtual void SetInputCoordinateSystemToRectangular() 00073 { this->SetInputCoordinateSystem(RECTANGULAR); } 00074 virtual void SetInputCoordinateSystemToSpherical() 00075 { this->SetInputCoordinateSystem(SPHERICAL); } 00077 00079 00082 vtkSetMacro(OutputCoordinateSystem, int); 00083 vtkGetMacro(OutputCoordinateSystem, int); 00084 virtual void SetOutputCoordinateSystemToRectangular() 00085 { this->SetOutputCoordinateSystem(RECTANGULAR); } 00086 virtual void SetOutputCoordinateSystemToSpherical() 00087 { this->SetOutputCoordinateSystem(SPHERICAL); } 00089 00090 protected: 00091 vtkGeoSampleArcs(); 00092 ~vtkGeoSampleArcs(); 00093 00095 int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *); 00096 00097 double GlobeRadius; 00098 double MaximumDistanceMeters; 00099 int InputCoordinateSystem; 00100 int OutputCoordinateSystem; 00101 00102 private: 00103 vtkGeoSampleArcs(const vtkGeoSampleArcs&); // Not implemented. 00104 void operator=(const vtkGeoSampleArcs&); // Not implemented. 00105 }; 00106 00107 #endif