24 #ifndef vtkGridAxesPlane2DActor_h 25 #define vtkGridAxesPlane2DActor_h 27 #include "vtkPVVTKExtensionsDefaultModule.h" 28 #include "vtkProp3D.h" 32 #include "vtkSmartPointer.h" 40 class vtkPolyDataMapper;
48 void PrintSelf(ostream& os, vtkIndent indent);
59 vtkSetVector6Macro(GridBounds,
double);
60 vtkGetVector6Macro(GridBounds,
double);
81 vtkSetClampMacro(Face,
int, MIN_YZ, MAX_XY);
82 vtkGetMacro(Face,
int);
89 vtkSetMacro(GenerateGrid,
bool);
90 vtkGetMacro(GenerateGrid,
bool);
91 vtkBooleanMacro(GenerateGrid,
bool);
99 vtkSetMacro(GenerateEdges,
bool);
100 vtkGetMacro(GenerateEdges,
bool);
101 vtkBooleanMacro(GenerateEdges,
bool);
109 vtkSetMacro(GenerateTicks,
bool);
110 vtkGetMacro(GenerateTicks,
bool);
111 vtkBooleanMacro(GenerateTicks,
bool);
116 TICK_DIRECTION_INWARDS = 0x1,
117 TICK_DIRECTION_OUTWARDS = 0x2,
118 TICK_DIRECTION_BOTH = TICK_DIRECTION_INWARDS | TICK_DIRECTION_OUTWARDS,
125 vtkSetClampMacro(TickDirection,
unsigned int, static_cast<unsigned int>(TICK_DIRECTION_INWARDS),
126 static_cast<unsigned int>(TICK_DIRECTION_BOTH));
127 vtkGetMacro(TickDirection,
unsigned int);
138 void SetTickPositions(
int axis, vtkDoubleArray* data);
141 return (axis >= 0 && axis < 3) ? this->TickPositions[axis] : this->EmptyVector;
149 vtkSetMacro(EnableLayerSupport,
bool);
150 vtkGetMacro(EnableLayerSupport,
bool);
151 vtkBooleanMacro(EnableLayerSupport,
bool);
159 vtkSetMacro(Layer,
int);
160 vtkGetMacro(Layer,
int);
167 void SetProperty(vtkProperty*);
168 vtkProperty* GetProperty();
181 this->GetGridBounds(this->Bounds);
186 virtual int RenderOpaqueGeometry(vtkViewport*);
187 virtual int RenderTranslucentPolygonalGeometry(vtkViewport* viewport);
188 virtual int RenderOverlay(vtkViewport* viewport);
189 virtual int HasTranslucentPolygonalGeometry();
190 virtual void ReleaseGraphicsResources(vtkWindow*);
210 bool IsLayerActive(vtkViewport* viewport);
216 void Update(vtkViewport* viewport);
217 bool UpdateEdges(vtkViewport* viewport);
218 bool UpdateGrid(vtkViewport* viewport);
219 bool UpdateTicks(vtkViewport* viewport);
229 std::deque<double> TickPositions[3];
240 vtkSmartPointer<vtkGridAxesHelper>
Helper;
246 std::deque<
double> EmptyVector;
248 typedef std::pair<vtkVector3d, vtkVector3d> LineSegmentType;
249 std::deque<LineSegmentType> LineSegments;
bool HelperManagedExternally
virtual double * GetBounds()
Returns the prop bounds.
vtkNew< vtkPoints > PolyDataPoints
vtkSmartPointer< vtkGridAxesHelper > Helper
renders a 2D grid for vtkGridAxes2DActor.
bool Update(vtkViewport *viewport)
vtkNew< vtkPolyDataMapper > Mapper
vtkNew< vtkPolyData > PolyData
is a helper object used by vtkGridAxes2DActor, vtkGridAxes3DActor, and vtkGridAxesPlane2DActor.
vtkNew< vtkCellArray > PolyDataLines
const std::deque< double > & GetTickPositions(int axis)
unsigned int TickDirection