VTK
dox/Filtering/vtkHyperOctreePointsGrabber.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkHyperOctreePointsGrabber.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 =========================================================================*/
00028 #ifndef __vtkHyperOctreePointsGrabber_h
00029 #define __vtkHyperOctreePointsGrabber_h
00030 
00031 #include "vtkObject.h"
00032 
00033 class VTK_FILTERING_EXPORT vtkHyperOctreePointsGrabber : public vtkObject
00034 {
00035 public:
00036   vtkTypeMacro(vtkHyperOctreePointsGrabber,vtkObject);
00037   void PrintSelf(ostream& os, vtkIndent indent);
00038   
00041   int GetDimension();
00042   
00045   virtual void SetDimension(int dim)=0;
00046   
00052   virtual void InitPointInsertion()=0;
00053   
00054   
00056 
00059   virtual void InsertPoint(vtkIdType ptId,
00060                            double pt[3],
00061                            double pcoords[3],
00062                            int ijk[3])=0;
00064   
00066 
00067   virtual void InsertPointWithMerge(vtkIdType ptId,
00068                                     double pt[3],
00069                                     double pcoords[3],
00070                                     int ijk[3])=0;
00072   
00074 
00075   virtual void InsertPoint2D(double pt[3],
00076                              int ijk[3])=0;
00078   
00079 protected:
00080   // Constructor with default bounds (0,1, 0,1, 0,1).
00081   vtkHyperOctreePointsGrabber();
00082   virtual ~vtkHyperOctreePointsGrabber();
00083   
00084   int Dimension;
00085   
00086 private:
00087   vtkHyperOctreePointsGrabber(const vtkHyperOctreePointsGrabber&);  // Not implemented.
00088   void operator=(const vtkHyperOctreePointsGrabber&);    // Not implemented.
00089 };
00090 
00091 #endif