Main Page | Directories | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

vtkConeSource.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkConeSource.h,v $
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 =========================================================================*/
00048 #ifndef __vtkConeSource_h
00049 #define __vtkConeSource_h
00050 
00051 #include "vtkPolyDataSource.h"
00052 
00053 #include "vtkCell.h" // Needed for VTK_CELL_SIZE
00054 
00055 class VTK_GRAPHICS_EXPORT vtkConeSource : public vtkPolyDataSource 
00056 {
00057 public:
00058   vtkTypeRevisionMacro(vtkConeSource,vtkPolyDataSource);
00059   void PrintSelf(ostream& os, vtkIndent indent);
00060 
00064   static vtkConeSource *New();
00065 
00067 
00069   vtkSetClampMacro(Height,double,0.0,VTK_DOUBLE_MAX)
00070   vtkGetMacro(Height,double);
00072 
00074 
00075   vtkSetClampMacro(Radius,double,0.0,VTK_DOUBLE_MAX)
00076   vtkGetMacro(Radius,double);
00078 
00080 
00081   vtkSetClampMacro(Resolution,int,0,VTK_CELL_SIZE)
00082   vtkGetMacro(Resolution,int);
00084 
00086 
00087   vtkSetVector3Macro(Center,double);
00088   vtkGetVectorMacro(Center,double,3);
00090 
00092 
00095   vtkSetVector3Macro(Direction,double);
00096   vtkGetVectorMacro(Direction,double,3);
00098 
00100 
00102   void SetAngle (double angle);
00103   double GetAngle ();
00105 
00107 
00108   vtkSetMacro(Capping,int);
00109   vtkGetMacro(Capping,int);
00110   vtkBooleanMacro(Capping,int);
00112 
00113 protected:
00114   vtkConeSource(int res=6);
00115   ~vtkConeSource() {}
00116 
00117   void Execute();
00118   void ExecuteInformation();
00119 
00120   double Height;
00121   double Radius;
00122   int Resolution;
00123   int Capping;
00124   double Center[3];
00125   double Direction[3];
00126   
00127 private:
00128   vtkConeSource(const vtkConeSource&);  // Not implemented.
00129   void operator=(const vtkConeSource&);  // Not implemented.
00130 };
00131 
00132 #endif
00133 
00134