00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00029 #ifndef __vtkVRMLExporter_h
00030 #define __vtkVRMLExporter_h
00031
00032 #include "vtkExporter.h"
00033
00034 class vtkLight;
00035 class vtkActor;
00036 class vtkPoints;
00037 class vtkDataArray;
00038 class vtkUnsignedCharArray;
00039 class vtkPolyData;
00040 class vtkPointData;
00041
00042 class VTK_RENDERING_EXPORT vtkVRMLExporter : public vtkExporter
00043 {
00044 public:
00045 static vtkVRMLExporter *New();
00046 vtkTypeMacro(vtkVRMLExporter,vtkExporter);
00047 void PrintSelf(ostream& os, vtkIndent indent);
00048
00050
00051 vtkSetStringMacro(FileName);
00052 vtkGetStringMacro(FileName);
00054
00056
00057 vtkSetMacro(Speed,double);
00058 vtkGetMacro(Speed,double);
00060
00063 void SetFilePointer(FILE *);
00064
00065 protected:
00066 vtkVRMLExporter();
00067 ~vtkVRMLExporter();
00068
00069 void WriteData();
00070 void WriteALight(vtkLight *aLight, FILE *fp);
00071 void WriteAnActor(vtkActor *anActor, FILE *fp);
00072 void WritePointData(vtkPoints *points, vtkDataArray *normals,
00073 vtkDataArray *tcoords, vtkUnsignedCharArray *colors,
00074 FILE *fp);
00075 void WriteShapeBegin(vtkActor* actor, FILE *fileP,
00076 vtkPolyData *polyData,vtkPointData *pntData,
00077 vtkUnsignedCharArray *color);
00078 void WriteShapeEnd( FILE *fileP );
00079 char *FileName;
00080 FILE *FilePointer;
00081 double Speed;
00082 private:
00083 vtkVRMLExporter(const vtkVRMLExporter&);
00084 void operator=(const vtkVRMLExporter&);
00085 };
00086
00087 #endif
00088