VTK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
vtkInteractorStyleAreaSelectHover.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkInteractorStyleAreaSelectHover.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 =========================================================================*/
15 /*-------------------------------------------------------------------------
16  Copyright 2008 Sandia Corporation.
17  Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
18  the U.S. Government retains certain rights in this software.
19 -------------------------------------------------------------------------*/
36 #ifndef __vtkInteractorStyleAreaSelectHover_h
37 #define __vtkInteractorStyleAreaSelectHover_h
38 
39 #include "vtkViewsInfovisModule.h" // For export macro
40 #include "vtkInteractorStyleRubberBand2D.h"
41 
42 class vtkAreaLayout;
43 class vtkBalloonRepresentation;
44 class vtkPoints;
45 class vtkRenderer;
46 class vtkTree;
47 class vtkWorldPointPicker;
48 class vtkPolyData;
49 
50 class VTKVIEWSINFOVIS_EXPORT vtkInteractorStyleAreaSelectHover : public vtkInteractorStyleRubberBand2D
51 {
52 public:
54  vtkTypeMacro(vtkInteractorStyleAreaSelectHover,vtkInteractorStyleRubberBand2D);
55  void PrintSelf(ostream& os, vtkIndent indent);
56 
58 
60  void SetLayout(vtkAreaLayout* layout);
61  vtkGetObjectMacro(Layout, vtkAreaLayout);
63 
65 
67  vtkSetStringMacro(LabelField);
68  vtkGetStringMacro(LabelField);
70 
72 
74  vtkSetMacro(UseRectangularCoordinates, bool);
75  vtkGetMacro(UseRectangularCoordinates, bool);
76  vtkBooleanMacro(UseRectangularCoordinates, bool);
78 
81  void OnMouseMove();
82 
84  virtual void SetInteractor(vtkRenderWindowInteractor *rwi);
85 
87  void SetHighLightColor(double r, double g, double b);
88 
90 
91  void SetHighLightWidth(double lw);
92  double GetHighLightWidth();
94 
96  vtkIdType GetIdAtPos(int x, int y);
97 
98 protected:
101 
102 private:
104  void operator=(const vtkInteractorStyleAreaSelectHover&); // Not implemented
105 
106  // These methods are used internally
107  void GetBoundingAreaForItem(vtkIdType id, float *sinfo);
108 
109  vtkWorldPointPicker* Picker;
110  vtkBalloonRepresentation* Balloon;
111  vtkPolyData *HighlightData;
112  vtkActor *HighlightActor;
113  vtkAreaLayout* Layout;
114  char *LabelField;
115  bool UseRectangularCoordinates;
116 };
117 
118 #endif
int vtkIdType
Definition: vtkType.h:268
layout a vtkTree into a tree map
Definition: vtkAreaLayout.h:45
a simple class to control print indentation
Definition: vtkIndent.h:38
A rooted tree data structure.
Definition: vtkTree.h:59
An interactor style for an area tree view.
represent and manipulate 3D points
Definition: vtkPoints.h:39