VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkBYUWriter.h 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 =========================================================================*/ 00031 #ifndef vtkBYUWriter_h 00032 #define vtkBYUWriter_h 00033 00034 #include "vtkIOGeometryModule.h" // For export macro 00035 #include "vtkWriter.h" 00036 00037 class vtkPolyData; 00038 00039 class VTKIOGEOMETRY_EXPORT vtkBYUWriter : public vtkWriter 00040 { 00041 public: 00042 static vtkBYUWriter *New(); 00043 00044 vtkTypeMacro(vtkBYUWriter,vtkWriter); 00045 void PrintSelf(ostream& os, vtkIndent indent); 00046 00048 00049 vtkSetStringMacro(GeometryFileName); 00050 vtkGetStringMacro(GeometryFileName); 00052 00054 00055 vtkSetStringMacro(DisplacementFileName); 00056 vtkGetStringMacro(DisplacementFileName); 00058 00060 00061 vtkSetStringMacro(ScalarFileName); 00062 vtkGetStringMacro(ScalarFileName); 00064 00066 00067 vtkSetStringMacro(TextureFileName); 00068 vtkGetStringMacro(TextureFileName); 00070 00072 00073 vtkSetMacro(WriteDisplacement,int); 00074 vtkGetMacro(WriteDisplacement,int); 00075 vtkBooleanMacro(WriteDisplacement,int); 00077 00079 00080 vtkSetMacro(WriteScalar,int); 00081 vtkGetMacro(WriteScalar,int); 00082 vtkBooleanMacro(WriteScalar,int); 00084 00086 00087 vtkSetMacro(WriteTexture,int); 00088 vtkGetMacro(WriteTexture,int); 00089 vtkBooleanMacro(WriteTexture,int); 00091 00093 00094 vtkPolyData* GetInput(); 00095 vtkPolyData* GetInput(int port); 00097 00098 protected: 00099 vtkBYUWriter(); 00100 ~vtkBYUWriter(); 00101 00102 void WriteData(); 00103 00104 char *GeometryFileName; 00105 char *DisplacementFileName; 00106 char *ScalarFileName; 00107 char *TextureFileName; 00108 int WriteDisplacement; 00109 int WriteScalar; 00110 int WriteTexture; 00111 00112 void WriteGeometryFile(FILE *fp, int numPts); 00113 void WriteDisplacementFile(int numPts); 00114 void WriteScalarFile(int numPts); 00115 void WriteTextureFile(int numPts); 00116 00117 virtual int FillInputPortInformation(int port, vtkInformation *info); 00118 00119 private: 00120 vtkBYUWriter(const vtkBYUWriter&); // Not implemented. 00121 void operator=(const vtkBYUWriter&); // Not implemented. 00122 }; 00123 00124 #endif 00125