VTK
vtkTerrainDataPointPlacer.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkTerrainDataPointPlacer.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 =========================================================================*/
39 #ifndef __vtkTerrainDataPointPlacer_h
40 #define __vtkTerrainDataPointPlacer_h
41 
42 #include "vtkPointPlacer.h"
43 
44 class vtkPropCollection;
45 class vtkProp;
46 class vtkPropPicker;
47 
49 {
50 public:
53 
55 
57  void PrintSelf(ostream& os, vtkIndent indent);
59 
60  // Descuription:
61  // Add an actor (that represents a terrain in a rendererd scene) to the
62  // list. Only props in this list are considered by the PointPlacer
63  virtual void AddProp( vtkProp * );
64  virtual void RemoveAllProps();
65 
67 
71  vtkSetMacro(HeightOffset,double);
72  vtkGetMacro(HeightOffset,double);
74 
76 
81  virtual int ComputeWorldPosition( vtkRenderer *ren,
82  double displayPos[2],
83  double worldPos[3],
84  double worldOrient[9] );
86 
88 
91  virtual int ComputeWorldPosition( vtkRenderer *ren,
92  double displayPos[2],
93  double refWorldPos[3],
94  double worldPos[3],
95  double worldOrient[9] );
97 
100  virtual int ValidateWorldPosition( double worldPos[3] );
101 
103  virtual int ValidateDisplayPosition( vtkRenderer *, double displayPos[2] );
104 
106 
108  virtual int ValidateWorldPosition( double worldPos[3],
109  double worldOrient[9] );
111 
113 
114  vtkGetObjectMacro( PropPicker, vtkPropPicker );
116 
117 protected:
120 
121  // The props that represents the terrain data (one or more) in a rendered
122  // scene
125  double HeightOffset;
126 
127 private:
128  vtkTerrainDataPointPlacer(const vtkTerrainDataPointPlacer&); //Not implemented
129  void operator=(const vtkTerrainDataPointPlacer&); //Not implemented
130 };
131 
132 #endif