VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkCompositePolyDataMapper.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 =========================================================================*/ 00030 #ifndef __vtkCompositePolyDataMapper_h 00031 #define __vtkCompositePolyDataMapper_h 00032 00033 #include "vtkRenderingCoreModule.h" // For export macro 00034 #include "vtkMapper.h" 00035 00036 class vtkPolyDataMapper; 00037 class vtkInformation; 00038 class vtkRenderer; 00039 class vtkActor; 00040 class vtkCompositePolyDataMapperInternals; 00041 00042 class VTKRENDERINGCORE_EXPORT vtkCompositePolyDataMapper : public vtkMapper 00043 { 00044 00045 public: 00046 static vtkCompositePolyDataMapper *New(); 00047 vtkTypeMacro(vtkCompositePolyDataMapper, vtkMapper); 00048 virtual void PrintSelf(ostream& os, vtkIndent indent); 00049 00052 void Render(vtkRenderer *ren, vtkActor *a); 00053 00055 00056 double *GetBounds(); 00057 void GetBounds(double bounds[6]) { this->Superclass::GetBounds( bounds ); }; 00059 00061 void ReleaseGraphicsResources(vtkWindow *); 00062 00063 protected: 00064 vtkCompositePolyDataMapper(); 00065 ~vtkCompositePolyDataMapper(); 00066 00070 vtkExecutive* CreateDefaultExecutive(); 00071 00073 virtual int FillInputPortInformation(int port, vtkInformation* info); 00074 00077 void BuildPolyDataMapper(); 00078 00081 virtual vtkPolyDataMapper *MakeAMapper(); 00082 00084 void ComputeBounds(); 00085 00087 vtkTimeStamp BoundsMTime; 00088 00091 vtkCompositePolyDataMapperInternals *Internal; 00092 00094 vtkTimeStamp InternalMappersBuildTime; 00095 00096 private: 00097 vtkCompositePolyDataMapper(const vtkCompositePolyDataMapper&); // Not implemented. 00098 void operator=(const vtkCompositePolyDataMapper&); // Not implemented. 00099 }; 00100 00101 #endif