VTK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
vtkTexturedSphereSource.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkTexturedSphereSource.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
31 #ifndef __vtkTexturedSphereSource_h
32 #define __vtkTexturedSphereSource_h
33 
34 #include "vtkFiltersSourcesModule.h" // For export macro
35 #include "vtkPolyDataAlgorithm.h"
36 
37 #define VTK_MAX_SPHERE_RESOLUTION 1024
38 
39 class VTKFILTERSSOURCES_EXPORT vtkTexturedSphereSource : public vtkPolyDataAlgorithm
40 {
41 public:
43  void PrintSelf(ostream& os, vtkIndent indent);
44 
47  static vtkTexturedSphereSource *New();
48 
50 
51  vtkSetClampMacro(Radius,double,0.0,VTK_DOUBLE_MAX);
52  vtkGetMacro(Radius,double);
54 
56 
57  vtkSetClampMacro(ThetaResolution,int,4,VTK_MAX_SPHERE_RESOLUTION);
58  vtkGetMacro(ThetaResolution,int);
60 
62 
63  vtkSetClampMacro(PhiResolution,int,4,VTK_MAX_SPHERE_RESOLUTION);
64  vtkGetMacro(PhiResolution,int);
66 
68 
69  vtkSetClampMacro(Theta,double,0.0,360.0);
70  vtkGetMacro(Theta,double);
72 
74 
75  vtkSetClampMacro(Phi,double,0.0,180.0);
76  vtkGetMacro(Phi,double);
78 
79 protected:
80  vtkTexturedSphereSource(int res=8);
82 
83  int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
84  double Radius;
85  double Theta;
86  double Phi;
89 
90 private:
91  vtkTexturedSphereSource(const vtkTexturedSphereSource&); // Not implemented.
92  void operator=(const vtkTexturedSphereSource&); // Not implemented.
93 };
94 
95 #endif
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
create a sphere centered at the origin
#define VTK_MAX_SPHERE_RESOLUTION
static vtkPolyDataAlgorithm * New()
void PrintSelf(ostream &os, vtkIndent indent)
Superclass for algorithms that produce only polydata as output.