00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkAbstractMapper3D.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 =========================================================================*/ 00048 #ifndef __vtkAbstractMapper3D_h 00049 #define __vtkAbstractMapper3D_h 00050 00051 #include "vtkAbstractMapper.h" 00052 00053 class vtkWindow; 00054 class vtkDataSet; 00055 00056 class VTK_RENDERING_EXPORT vtkAbstractMapper3D : public vtkAbstractMapper 00057 { 00058 public: 00059 vtkTypeRevisionMacro(vtkAbstractMapper3D,vtkAbstractMapper); 00060 void PrintSelf(ostream& os, vtkIndent indent); 00061 00064 virtual float *GetBounds()=0; 00065 00067 virtual void GetBounds(float bounds[6]); 00068 00070 float *GetCenter(); 00071 00073 float GetLength(); 00074 00077 virtual int IsARayCastMapper() {return 0;}; 00078 00082 virtual int IsARenderIntoImageMapper() {return 0;}; 00083 00085 virtual void Update()=0; 00086 00087 protected: 00088 vtkAbstractMapper3D(); 00089 ~vtkAbstractMapper3D() {}; 00090 00091 float Bounds[6]; 00092 float Center[3]; 00093 00094 private: 00095 vtkAbstractMapper3D(const vtkAbstractMapper3D&); // Not implemented. 00096 void operator=(const vtkAbstractMapper3D&); // Not implemented. 00097 }; 00098 00099 #endif