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

dox/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 =========================================================================*/ 00055 #ifndef __vtkContourGrid_h 00056 #define __vtkContourGrid_h 00057 00058 #include "vtkUnstructuredGridToPolyDataFilter.h" 00059 00060 #include "vtkContourValues.h" // Needed for inline methods 00061 00062 class vtkEdgeTable; 00063 class vtkPointLocator; 00064 class vtkScalarTree; 00065 00066 class VTK_GRAPHICS_EXPORT vtkContourGrid : public vtkUnstructuredGridToPolyDataFilter 00067 { 00068 public: 00069 vtkTypeRevisionMacro(vtkContourGrid,vtkUnstructuredGridToPolyDataFilter); 00070 void PrintSelf(ostream& os, vtkIndent indent); 00071 00074 static vtkContourGrid *New(); 00075 00077 00078 void SetValue(int i, float value); 00079 float GetValue(int i); 00080 float *GetValues(); 00081 void GetValues(float *contourValues); 00082 void SetNumberOfContours(int number); 00083 int GetNumberOfContours(); 00084 void GenerateValues(int numContours, float range[2]); 00085 void GenerateValues(int numContours, float rangeStart, float rangeEnd); 00087 00089 unsigned long GetMTime(); 00090 00092 00096 vtkSetMacro(ComputeNormals,int); 00097 vtkGetMacro(ComputeNormals,int); 00098 vtkBooleanMacro(ComputeNormals,int); 00100 00102 00108 vtkSetMacro(ComputeGradients,int); 00109 vtkGetMacro(ComputeGradients,int); 00110 vtkBooleanMacro(ComputeGradients,int); 00112 00114 00115 vtkSetMacro(ComputeScalars,int); 00116 vtkGetMacro(ComputeScalars,int); 00117 vtkBooleanMacro(ComputeScalars,int); 00119 00121 00122 vtkSetMacro(UseScalarTree,int); 00123 vtkGetMacro(UseScalarTree,int); 00124 vtkBooleanMacro(UseScalarTree,int); 00126 00128 00130 void SetLocator(vtkPointLocator *locator); 00131 vtkGetObjectMacro(Locator,vtkPointLocator); 00133 00136 void CreateDefaultLocator(); 00137 00138 protected: 00139 vtkContourGrid(); 00140 ~vtkContourGrid(); 00141 00142 //BTX 00143 00144 // This is temporary solution. The vtkContourFilter must be able 00145 // to call SelectInputScalars(). 00146 friend class vtkContourFilter; 00147 00149 00152 vtkGetStringMacro(InputScalarsSelection); 00153 void SelectInputScalars(const char *fieldName) 00154 {this->SetInputScalarsSelection(fieldName);} 00156 00157 //ETX 00158 00159 void Execute(); 00160 00161 vtkContourValues *ContourValues; 00162 int ComputeNormals; 00163 int ComputeGradients; 00164 int ComputeScalars; 00165 vtkPointLocator *Locator; 00166 int UseScalarTree; 00167 vtkScalarTree *ScalarTree; 00168 vtkEdgeTable *EdgeTable; 00169 00170 char *InputScalarsSelection; 00171 vtkSetStringMacro(InputScalarsSelection); 00172 00173 private: 00174 vtkContourGrid(const vtkContourGrid&); // Not implemented. 00175 void operator=(const vtkContourGrid&); // Not implemented. 00176 }; 00177 00180 inline void vtkContourGrid::SetValue(int i, float value) 00181 {this->ContourValues->SetValue(i,value);} 00182 00184 00185 inline float vtkContourGrid::GetValue(int i) 00186 {return this->ContourValues->GetValue(i);} 00188 00190 00192 inline float *vtkContourGrid::GetValues() 00193 {return this->ContourValues->GetValues();} 00195 00199 inline void vtkContourGrid::GetValues(float *contourValues) 00200 {this->ContourValues->GetValues(contourValues);} 00201 00205 inline void vtkContourGrid::SetNumberOfContours(int number) 00206 {this->ContourValues->SetNumberOfContours(number);} 00207 00209 00210 inline int vtkContourGrid::GetNumberOfContours() 00211 {return this->ContourValues->GetNumberOfContours();} 00213 00215 00217 inline void vtkContourGrid::GenerateValues(int numContours, float range[2]) 00218 {this->ContourValues->GenerateValues(numContours, range);} 00220 00222 00224 inline void vtkContourGrid::GenerateValues(int numContours, float 00225 rangeStart, float rangeEnd) 00226 {this->ContourValues->GenerateValues(numContours, rangeStart, rangeEnd);} 00228 00229 00230 #endif 00231 00232