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

vtkArcPlotter.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkArcPlotter.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 =========================================================================*/
00043 #ifndef __vtkArcPlotter_h
00044 #define __vtkArcPlotter_h
00045 
00046 #include "vtkPolyDataAlgorithm.h"
00047 
00048 #define VTK_PLOT_SCALARS    1
00049 #define VTK_PLOT_VECTORS    2
00050 #define VTK_PLOT_NORMALS    3
00051 #define VTK_PLOT_TCOORDS    4
00052 #define VTK_PLOT_TENSORS    5
00053 #define VTK_PLOT_FIELD_DATA 6
00054 
00055 class vtkCamera;
00056 class vtkDataArray;
00057 class vtkPointData;
00058 class vtkPoints;
00059 
00060 class VTK_HYBRID_EXPORT vtkArcPlotter : public vtkPolyDataAlgorithm 
00061 {
00062 public:
00064   static vtkArcPlotter *New();
00065 
00066   vtkTypeRevisionMacro(vtkArcPlotter,vtkPolyDataAlgorithm);
00067   void PrintSelf(ostream& os, vtkIndent indent);
00068 
00070 
00072   virtual void SetCamera(vtkCamera*);
00073   vtkGetObjectMacro(Camera,vtkCamera);
00075 
00077 
00081   vtkSetMacro(PlotMode, int);
00082   vtkGetMacro(PlotMode, int);
00083   void SetPlotModeToPlotScalars() {this->SetPlotMode(VTK_PLOT_SCALARS);};
00084   void SetPlotModeToPlotVectors() {this->SetPlotMode(VTK_PLOT_VECTORS);};
00085   void SetPlotModeToPlotNormals() {this->SetPlotMode(VTK_PLOT_NORMALS);};
00086   void SetPlotModeToPlotTCoords() {this->SetPlotMode(VTK_PLOT_TCOORDS);};
00087   void SetPlotModeToPlotTensors() {this->SetPlotMode(VTK_PLOT_TENSORS);};
00088   void SetPlotModeToPlotFieldData()
00089             {this->SetPlotMode(VTK_PLOT_FIELD_DATA);};
00091 
00093 
00096   vtkSetMacro(PlotComponent,int);
00097   vtkGetMacro(PlotComponent,int);
00099 
00101 
00102   vtkSetClampMacro(Radius,double,0.0,VTK_LARGE_FLOAT);
00103   vtkGetMacro(Radius,double);
00105 
00107 
00109   vtkSetClampMacro(Height,double,0.0,VTK_LARGE_FLOAT);
00110   vtkGetMacro(Height,double);
00112 
00114 
00117   vtkSetClampMacro(Offset, double, 0.0, VTK_LARGE_FLOAT);
00118   vtkGetMacro(Offset, double);
00120 
00122 
00125   vtkSetMacro(UseDefaultNormal,int);
00126   vtkGetMacro(UseDefaultNormal,int);
00127   vtkBooleanMacro(UseDefaultNormal,int);
00129 
00131 
00133   vtkSetVector3Macro(DefaultNormal,float);
00134   vtkGetVectorMacro(DefaultNormal,float,3);
00136 
00138 
00140   vtkSetClampMacro(FieldDataArray,int,0,VTK_LARGE_INTEGER);
00141   vtkGetMacro(FieldDataArray,int);
00143 
00145   unsigned long GetMTime();
00146 
00147 protected:
00148   vtkArcPlotter();
00149   ~vtkArcPlotter();
00150 
00151   int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00152   int  OffsetPoint(vtkIdType ptId, vtkPoints *inPts, double n[3],
00153                    vtkPoints *newPts, double offset, 
00154                    double *range, double val);
00155   int  ProcessComponents(vtkIdType numPts, vtkPointData *pd);
00156 
00157   vtkCamera *Camera;
00158   int       PlotMode;
00159   int       PlotComponent;
00160   double     Radius;
00161   double     Height;
00162   double     Offset;
00163   float     DefaultNormal[3];
00164   int       UseDefaultNormal;
00165   int       FieldDataArray;
00166   
00167 private:
00168   vtkDataArray *Data;
00169   double    *DataRange;
00170   double   *Tuple;
00171   int       NumberOfComponents;
00172   int       ActiveComponent;
00173   int       StartComp;
00174   int       EndComp;
00175   
00176 private:
00177   vtkArcPlotter(const vtkArcPlotter&);  // Not implemented.
00178   void operator=(const vtkArcPlotter&);  // Not implemented.
00179 };
00180 
00181 #endif

Generated on Mon Jan 21 23:07:27 2008 for VTK by  doxygen 1.4.3-20050530