VTK
vtkPolyDataPointPlacer.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkPolyDataPointPlacer.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 =========================================================================*/
34 #ifndef vtkPolyDataPointPlacer_h
35 #define vtkPolyDataPointPlacer_h
36 
37 #include "vtkInteractionWidgetsModule.h" // For export macro
38 #include "vtkPointPlacer.h"
39 
40 class vtkRenderer;
41 class vtkPropCollection;
42 class vtkProp;
43 class vtkPropPicker;
44 
45 class VTKINTERACTIONWIDGETS_EXPORT vtkPolyDataPointPlacer : public vtkPointPlacer
46 {
47 public:
51  static vtkPolyDataPointPlacer *New();
52 
54 
58  void PrintSelf(ostream& os, vtkIndent indent) override;
60 
61  // Descuription:
62  // Add an actor (that represents a terrain in a rendererd scene) to the
63  // list. Only props in this list are considered by the PointPlacer
64  virtual void AddProp( vtkProp * );
65  virtual void RemoveViewProp(vtkProp *prop);
66  virtual void RemoveAllProps();
67  int HasProp( vtkProp * );
68  int GetNumberOfProps();
69 
79  double displayPos[2],
80  double worldPos[3],
81  double worldOrient[9] ) override;
82 
90  double displayPos[2],
91  double refWorldPos[3],
92  double worldPos[3],
93  double worldOrient[9] ) override;
94 
99  int ValidateWorldPosition( double worldPos[3] ) override;
100 
104  int ValidateDisplayPosition( vtkRenderer *, double displayPos[2] ) override;
105 
110  int ValidateWorldPosition( double worldPos[3],
111  double worldOrient[9] ) override;
112 
114 
117  vtkGetObjectMacro( PropPicker, vtkPropPicker );
119 
120 protected:
122  ~vtkPolyDataPointPlacer() override;
123 
124  // The props that represents the terrain data (one or more) in a rendered
125  // scene
128 
129 private:
131  void operator=(const vtkPolyDataPointPlacer&) = delete;
132 };
133 
134 #endif
135 
abstract superclass for all actors, volumes and annotations
Definition: vtkProp.h:52
virtual int ComputeWorldPosition(vtkRenderer *ren, double displayPos[2], double worldPos[3], double worldOrient[9])
Given a renderer and a display position in pixel coordinates, compute the world position and orientat...
pick an actor/prop using graphics hardware
Definition: vtkPropPicker.h:42
abstract specification for renderers
Definition: vtkRenderer.h:63
an ordered list of Props
vtkPropCollection * SurfaceProps
a simple class to control print indentation
Definition: vtkIndent.h:39
virtual int ValidateDisplayPosition(vtkRenderer *, double displayPos[2])
Given a display position, check the validity of this position.
Abstract interface to translate 2D display positions to world coordinates.
Base class to place points given constraints on polygonal data.
virtual int ValidateWorldPosition(double worldPos[3])
Given a world position check the validity of this position according to the constraints of the placer...
static vtkPointPlacer * New()
Instantiate this class.
void PrintSelf(ostream &os, vtkIndent indent) override
Standard methods for instances of this class.