VTK
vtkLassoStencilSource.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkLassoStencilSource.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
31 #ifndef __vtkLassoStencilSource_h
32 #define __vtkLassoStencilSource_h
33 
34 
35 #include "vtkImageStencilSource.h"
36 
37 class vtkPoints;
38 class vtkSpline;
39 class vtkLSSPointMap;
40 
42 {
43 public:
44  static vtkLassoStencilSource *New();
46  void PrintSelf(ostream& os, vtkIndent indent);
47 
48 //BTX
49  enum {
50  POLYGON = 0,
51  SPLINE = 1,
52  };
53 //ETX
54 
56 
58  vtkGetMacro(Shape, int);
59  vtkSetClampMacro(Shape, int, POLYGON, SPLINE);
60  void SetShapeToPolygon() { this->SetShape(POLYGON); };
61  void SetShapeToSpline() { this->SetShape(SPLINE); };
62  virtual const char *GetShapeAsString();
64 
66 
69  virtual void SetPoints(vtkPoints *points);
70  vtkGetObjectMacro(Points, vtkPoints);
72 
74 
76  vtkGetMacro(SliceOrientation, int);
77  vtkSetClampMacro(SliceOrientation, int, 0, 2);
79 
81 
84  virtual void SetSlicePoints(int i, vtkPoints *points);
85  virtual vtkPoints *GetSlicePoints(int i);
87 
89  virtual void RemoveAllSlicePoints();
90 
92  unsigned long GetMTime();
93 
94 protected:
97 
100 
101  int Shape;
106  vtkLSSPointMap *PointMap;
107 
108 private:
109  vtkLassoStencilSource(const vtkLassoStencilSource&); // Not implemented.
110  void operator=(const vtkLassoStencilSource&); // Not implemented.
111 };
112 
113 #endif
Store vtkAlgorithm input/output information.
static vtkImageStencilSource * New()
virtual unsigned long GetMTime()
a simple class to control print indentation
Definition: vtkIndent.h:37
#define VTK_IMAGING_EXPORT
spline abstract class for interpolating splines
Definition: vtkSpline.h:60
void PrintSelf(ostream &os, vtkIndent indent)
virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
Store zero or more vtkInformation instances.
Create a stencil from a contour.
generate an image stencil
represent and manipulate 3D points
Definition: vtkPoints.h:38