Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages

# Graphics/vtkContourGrid.h

Go to the documentation of this file.

    00001 /*=========================================================================
    00002
    00003   Program:   Visualization Toolkit
    00004   Module:    $RCSfile: vtkContourGrid.h,v $
    00005   Language:  C++
    00006
    00007   Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen
    00008   All rights reserved.
    00009   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
    00010
    00011      This software is distributed WITHOUT ANY WARRANTY; without even
    00012      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
    00013      PURPOSE.  See the above copyright notice for more information.
    00014
    00015 =========================================================================*/
    00067 #ifndef __vtkContourGrid_h
    00068 #define __vtkContourGrid_h
    00069
    00070 #include "vtkUnstructuredGridToPolyDataFilter.h"
    00071
    00072 #include "vtkContourValues.h" // Needed for inline methods
    00073
    00074 class vtkEdgeTable;
    00075 class vtkPointLocator;
    00076 class vtkScalarTree;
    00077
    00078 class VTK_GRAPHICS_EXPORT vtkContourGrid : public vtkUnstructuredGridToPolyDataFilter
    00079 {
    00080 public:
    00081   vtkTypeRevisionMacro(vtkContourGrid,vtkUnstructuredGridToPolyDataFilter);
    00082   void PrintSelf(ostream& os, vtkIndent indent);
    00083
    00086   static vtkContourGrid *New();
    00087
    00089
    00090   void SetValue(int i, float value);
    00091   float GetValue(int i);
    00092   float *GetValues();
    00093   void GetValues(float *contourValues);
    00094   void SetNumberOfContours(int number);
    00095   int GetNumberOfContours();
    00096   void GenerateValues(int numContours, float range[2]);
    00097   void GenerateValues(int numContours, float rangeStart, float rangeEnd);
    00099
    00101   unsigned long GetMTime();
    00102
    00104
    00108   vtkSetMacro(ComputeNormals,int);
    00109   vtkGetMacro(ComputeNormals,int);
    00110   vtkBooleanMacro(ComputeNormals,int);
    00112
    00114
    00120   vtkSetMacro(ComputeGradients,int);
    00121   vtkGetMacro(ComputeGradients,int);
    00122   vtkBooleanMacro(ComputeGradients,int);
    00124
    00126
    00127   vtkSetMacro(ComputeScalars,int);
    00128   vtkGetMacro(ComputeScalars,int);
    00129   vtkBooleanMacro(ComputeScalars,int);
    00131
    00133
    00134   vtkSetMacro(UseScalarTree,int);
    00135   vtkGetMacro(UseScalarTree,int);
    00136   vtkBooleanMacro(UseScalarTree,int);
    00138
    00140
    00142   void SetLocator(vtkPointLocator *locator);
    00143   vtkGetObjectMacro(Locator,vtkPointLocator);
    00145
    00148   void CreateDefaultLocator();
    00149
    00150 protected:
    00151   vtkContourGrid();
    00152   ~vtkContourGrid();
    00153
    00154 //BTX
    00155
    00156   // This is temporary solution. The vtkContourFilter must be able
    00157   // to call SelectInputScalars().
    00158   friend class vtkContourFilter;
    00159
    00161
    00164   vtkGetStringMacro(InputScalarsSelection);
    00165   void SelectInputScalars(const char *fieldName)
    00166     {this->SetInputScalarsSelection(fieldName);}
    00168
    00169 //ETX
    00170
    00171   void Execute();
    00172
    00173   vtkContourValues *ContourValues;
    00174   int ComputeNormals;
    00175   int ComputeGradients;
    00176   int ComputeScalars;
    00177   vtkPointLocator *Locator;
    00178   int UseScalarTree;
    00179   vtkScalarTree *ScalarTree;
    00180   vtkEdgeTable *EdgeTable;
    00181
    00182   char *InputScalarsSelection;
    00183   vtkSetStringMacro(InputScalarsSelection);
    00184
    00185 private:
    00186   vtkContourGrid(const vtkContourGrid&);  // Not implemented.
    00187   void operator=(const vtkContourGrid&);  // Not implemented.
    00188 };
    00189
    00192 inline void vtkContourGrid::SetValue(int i, float value)
    00193 {this->ContourValues->SetValue(i,value);}
    00194
    00196
    00197 inline float vtkContourGrid::GetValue(int i)
    00198 {return this->ContourValues->GetValue(i);}
    00200
    00202
    00204 inline float *vtkContourGrid::GetValues()
    00205 {return this->ContourValues->GetValues();}
    00207
    00211 inline void vtkContourGrid::GetValues(float *contourValues)
    00212 {this->ContourValues->GetValues(contourValues);}
    00213
    00217 inline void vtkContourGrid::SetNumberOfContours(int number)
    00218 {this->ContourValues->SetNumberOfContours(number);}
    00219
    00221
    00222 inline int vtkContourGrid::GetNumberOfContours()
    00223 {return this->ContourValues->GetNumberOfContours();}
    00225
    00227
    00229 inline void vtkContourGrid::GenerateValues(int numContours, float range[2])
    00230 {this->ContourValues->GenerateValues(numContours, range);}
    00232
    00234
    00236 inline void vtkContourGrid::GenerateValues(int numContours, float
    00237                                              rangeStart, float rangeEnd)
    00238 {this->ContourValues->GenerateValues(numContours, rangeStart, rangeEnd);}
    00240
    00241
    00242 #endif
    00243
    00244