23#ifndef vtkGridAxesActor2D_h
24#define vtkGridAxesActor2D_h
27#include "vtkRenderingGridAxesModule.h"
37VTK_ABI_NAMESPACE_BEGIN
57 vtkSetVector6Macro(GridBounds,
double);
58 vtkGetVector6Macro(GridBounds,
double);
68 vtkGetMacro(Face,
int);
80 vtkSetMacro(LabelMask,
unsigned int);
81 vtkGetMacro(LabelMask,
unsigned int);
188 vtkBooleanMacro(GenerateGrid,
bool);
199 vtkBooleanMacro(GenerateEdges,
bool);
211 vtkBooleanMacro(GenerateTicks,
bool);
224 this->GetGridBounds(this->Bounds);
235 vtkSetMacro(ForceOpaque,
bool);
236 vtkGetMacro(ForceOpaque,
bool);
237 vtkBooleanMacro(ForceOpaque,
bool);
273 vtkSetVector2Macro(LabelDisplayOffset,
int);
274 vtkGetVector2Macro(LabelDisplayOffset,
int);
293 friend class vtkLabels;
297 double GridBounds[6];
299 unsigned int LabelMask = 0xff;
310 int LabelDisplayOffset[2] = { 0, 0 };
312 bool ForceOpaque =
false;
313 std::function<double(
double)> TickLabelFunction[3] = {
nullptr,
nullptr,
nullptr };
takes care of drawing 2D axes
Provides a 2D scene for vtkContextItem objects.
dynamic, self-adjusting array of double
actor for an axes plane in a 3D view.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
bool GetGenerateTicks()
Turn off to not generate the markers for the tick positions.
vtkTextProperty * GetTitleTextProperty(int axis)
Get/Set the title text properties for each of the coordinate axes.
static vtkGridAxesActor2D * New()
vtkMTimeType GetMTime() override
Overridden to include the mtime for the text properties.
vtkTypeBool HasTranslucentPolygonalGeometry() override
Standard render methods for different types of geometry.
vtkTextProperty * GetLabelTextProperty(int axis)
Get/Set the label text properties for each of the coordinate axes.
void SetTickLabelFunction(int axis, std::function< double(double)> func)
Get/Set the function that will be applied to the tick label of each axis.
int RenderOpaqueGeometry(vtkViewport *) override
Standard render methods for different types of geometry.
void SetNotation(int axis, int notation)
Get/set the numerical notation, standard, scientific or mixed (0, 1, 2).
void SetLabelTextProperty(int axis, vtkTextProperty *)
Get/Set the label text properties for each of the coordinate axes.
void UpdateTextActors(vtkViewport *viewport)
void SetGenerateGrid(bool val)
Turn off to not generate polydata for the plane's grid.
void SetCustomTickPositions(int axis, vtkDoubleArray *positions)
Set custom tick positions for each of the axes.
void SetProperty(vtkProperty *)
Get/Set the property used to control the appearance of the rendered grid, including edges.
std::function< double(double)> GetTickLabelFunction(int axis)
Get/Set the function that will be applied to the tick label of each axis.
void UpdateLabelPositions(vtkViewport *viewport)
double * GetBounds() override
Returns the prop bounds.
void GetActors(vtkPropCollection *) override
For some exporters and other other operations we must be able to collect all the actors or volumes.
void ReleaseGraphicsResources(vtkWindow *) override
Release any graphics resources that are being consumed by this prop.
void SetPrecision(int axis, int val)
Get/set the numerical precision to use, default is 2.
bool GetGenerateEdges()
Turn off to not generate the polydata for the plane's edges.
bool GetGenerateGrid()
Turn off to not generate polydata for the plane's grid.
int GetNotation(int axis)
Get/set the numerical notation, standard, scientific or mixed (0, 1, 2).
void SetTitleTextProperty(int axis, vtkTextProperty *)
Get/Set the title text properties for each of the coordinate axes.
vtkProperty * GetProperty()
Get/Set the property used to control the appearance of the rendered grid, including edges.
int RenderOverlay(vtkViewport *viewport) override
Standard render methods for different types of geometry.
int RenderTranslucentPolygonalGeometry(vtkViewport *viewport) override
Standard render methods for different types of geometry.
const std::string & GetTitle(int axis)
Set titles for each of the axes.
void SetGenerateTicks(bool val)
Turn off to not generate the markers for the tick positions.
void SetTitle(int axis, const std::string &title)
Set titles for each of the axes.
void UpdateTextProperties(vtkViewport *viewport)
~vtkGridAxesActor2D() override
bool Update(vtkViewport *viewport)
int GetPrecision(int axis)
Get/set the numerical precision to use, default is 2.
void UpdateGeometry(vtkViewport *viewport, bool doRegularUpdate)
Updates the billboard geometry without performing any rendering, to assist GetActors().
void SetGenerateEdges(bool val)
Turn off to not generate the polydata for the plane's edges.
actor for a cube-axes like prop in the 3D view.
a simple class to control print indentation
Allocate and hold a VTK object.
represents an 3D object for placement in a rendered scene
represent surface properties of a geometric object
Hold a reference to a vtkObjectBase instance.
represent text properties.
record modification and/or execution time
templated base type for containers of constant size.
abstract specification for Viewports
window superclass for vtkRenderWindow
vtkTypeUInt32 vtkMTimeType