00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkMergeFilter.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 =========================================================================*/ 00047 #ifndef __vtkMergeFilter_h 00048 #define __vtkMergeFilter_h 00049 00050 #include "vtkDataSetToDataSetFilter.h" 00051 00052 class vtkFieldList; 00053 00054 class VTK_GRAPHICS_EXPORT vtkMergeFilter : public vtkDataSetToDataSetFilter 00055 { 00056 public: 00057 static vtkMergeFilter *New(); 00058 vtkTypeRevisionMacro(vtkMergeFilter,vtkDataSetToDataSetFilter); 00059 void PrintSelf(ostream& os, vtkIndent indent); 00060 00062 00063 void SetGeometry(vtkDataSet *input) {this->SetInput(input);}; 00064 vtkDataSet *GetGeometry() {return this->GetInput();}; 00066 00068 00069 void SetScalars(vtkDataSet *); 00070 vtkDataSet *GetScalars(); 00072 00074 00075 void SetVectors(vtkDataSet *); 00076 vtkDataSet *GetVectors(); 00078 00080 00081 void SetNormals(vtkDataSet *); 00082 vtkDataSet *GetNormals(); 00084 00086 00088 void SetTCoords(vtkDataSet *); 00089 vtkDataSet *GetTCoords(); 00091 00093 00094 void SetTensors(vtkDataSet *); 00095 vtkDataSet *GetTensors(); 00097 00100 void AddField(const char* name, vtkDataSet* input); 00101 00102 protected: 00103 vtkMergeFilter(); 00104 ~vtkMergeFilter(); 00105 00106 // Usual data generation method 00107 void Execute(); 00108 void ComputeInputUpdateExtents(vtkDataObject *data); 00109 00110 vtkFieldList* FieldList; 00111 private: 00112 vtkMergeFilter(const vtkMergeFilter&); // Not implemented. 00113 void operator=(const vtkMergeFilter&); // Not implemented. 00114 }; 00115 00116 #endif 00117 00118