OSDN Git Service

FIRST REPOSITORY
[eos/hostdependOTHERS.git] / I386LINUX / util / I386LINUX / include / vtk / vtkMCubesWriter.h
1 /*=========================================================================
2
3   Program:   Visualization Toolkit
4   Module:    $RCSfile: vtkMCubesWriter.h,v $
5   Language:  C++
6   Date:      $Date: 2002/05/31 23:12:41 $
7   Version:   $Revision: 1.32 $
8
9   Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen 
10   All rights reserved.
11   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
12
13      This software is distributed WITHOUT ANY WARRANTY; without even 
14      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
15      PURPOSE.  See the above copyright notice for more information.
16
17 =========================================================================*/
18 // .NAME vtkMCubesWriter - write binary marching cubes file
19 // .SECTION Description
20 // vtkMCubesWriter is a polydata writer that writes binary marching cubes
21 // files. (Marching cubes is an isosurfacing technique that generates many
22 // triangles.) The binary format is supported by W. Lorensen's marching cubes
23 // program (and the vtkSliceCubes object). Each triangle is represented by
24 // three records, with each record consisting of six single precision
25 // floating point numbers representing the a triangle vertex coordinate and
26 // vertex normal.
27
28 // .SECTION Caveats
29 // Binary files are written in sun/hp/sgi (i.e., Big Endian) form.
30
31 // .SECTION See Also
32 // vtkMarchingCubes vtkSliceCubes vtkMCubesReader
33
34 #ifndef __vtkMCubesWriter_h
35 #define __vtkMCubesWriter_h
36
37 #include "vtkPolyDataWriter.h"
38
39 class VTK_IO_EXPORT vtkMCubesWriter : public vtkPolyDataWriter
40 {
41 public:
42   static vtkMCubesWriter *New();
43   vtkTypeRevisionMacro(vtkMCubesWriter,vtkPolyDataWriter);
44   void PrintSelf(ostream& os, vtkIndent indent);
45
46   // Description:
47   // Set/get file name of marching cubes limits file.
48   vtkSetStringMacro(LimitsFileName);
49   vtkGetStringMacro(LimitsFileName);
50
51 protected:
52   vtkMCubesWriter();
53   ~vtkMCubesWriter();
54
55   void WriteData();
56   char *LimitsFileName;
57 private:
58   vtkMCubesWriter(const vtkMCubesWriter&);  // Not implemented.
59   void operator=(const vtkMCubesWriter&);  // Not implemented.
60 };
61
62 #endif
63
64