Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages
Hybrid/vtkRIBExporter.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00068 #ifndef __vtkRIBExporter_h
00069 #define __vtkRIBExporter_h
00070
00071 #include "vtkExporter.h"
00072
00073 class vtkActor;
00074 class vtkCamera;
00075 class vtkLight;
00076 class vtkPolyData;
00077 class vtkProperty;
00078 class vtkRenderer;
00079 class vtkTexture;
00080 class vtkUnsignedCharArray;
00081
00082 class VTK_HYBRID_EXPORT vtkRIBExporter : public vtkExporter
00083 {
00084 public:
00085 static vtkRIBExporter *New();
00086 vtkTypeRevisionMacro(vtkRIBExporter,vtkExporter);
00087 void PrintSelf(ostream& os, vtkIndent indent);
00088
00090
00092 vtkSetVector2Macro(Size,int);
00093 vtkGetVectorMacro(Size,int,2);
00095
00097
00098 vtkSetVector2Macro(PixelSamples,int);
00099 vtkGetVectorMacro(PixelSamples,int,2);
00101
00103
00105 vtkSetStringMacro(FilePrefix);
00106 vtkGetStringMacro(FilePrefix);
00108
00110
00111 vtkSetStringMacro(TexturePrefix);
00112 vtkGetStringMacro(TexturePrefix);
00114
00116
00130 vtkSetMacro(Background,int);
00131 vtkGetMacro(Background,int);
00132 vtkBooleanMacro(Background,int);
00134
00136
00139 vtkSetClampMacro(ExportArrays, int, 0, 1);
00140 vtkBooleanMacro(ExportArrays, int);
00141 vtkGetMacro(ExportArrays, int);
00143
00144 protected:
00145 vtkRIBExporter();
00146 ~vtkRIBExporter();
00147
00148 int Background;
00149 int Size[2];
00150 int PixelSamples[2];
00151
00153 int ExportArrays;
00154
00156
00157 void WriteHeader (vtkRenderer *aRen);
00158 void WriteTrailer ();
00159 void WriteTexture (vtkTexture *aTexture);
00160 void WriteViewport (vtkRenderer *aRenderer, int size[2]);
00161 void WriteCamera (vtkCamera *aCamera);
00162 void WriteLight (vtkLight *aLight, int count);
00163 void WriteAmbientLight (int count);
00164 void WriteProperty (vtkProperty *aProperty, vtkTexture *aTexture);
00165 void WritePolygons (vtkPolyData *pd, vtkUnsignedCharArray *colors,
00166 vtkProperty *aProperty);
00167 void WriteStrips (vtkPolyData *pd, vtkUnsignedCharArray *colors,
00168 vtkProperty *aProperty);
00170
00171 void WriteData();
00172 void WriteActor(vtkActor *anActor);
00173
00178 void ModifyArrayName(char *newname, const char* name);
00179
00180 char *GetTextureName (vtkTexture *aTexture);
00181 char *GetTIFFName (vtkTexture *aTexture);
00182 char *FilePrefix;
00183 FILE *FilePtr;
00184 char *TexturePrefix;
00185 private:
00186 vtkRIBExporter(const vtkRIBExporter&);
00187 void operator=(const vtkRIBExporter&);
00188 };
00189
00190 #endif
00191