29 #include "vtkChartsCoreModule.h"
62 void SetGeometry(
const vtkRectf &bounds);
67 void SetAngle(
double angle);
72 void SetAroundX(
bool isX);
96 void SetAutoRotate(
bool b);
102 void SetDecorateAxes(
bool b);
108 void SetFitToScene(
bool b);
134 void RecalculateBounds();
141 void RecalculateTransform();
179 virtual void CalculateTransforms();
243 bool CheckForSceneResize();
258 void ScaleDownAxes();
263 void ZoomAxes(
int delta);
269 void InitializeAxesBoundaryPoints();
280 void InitializeFutureBox();
285 void ComputeDataBounds();
296 void DetermineWhichAxesToLabel();
313 void GetOffsetForAxisLabel(
int axis,
float *bounds,
float *
offset);
320 double CalculateNiceMinMax(
double &min,
double &
max,
int axis);
325 void GetClippingPlaneEquation(
int i,
double *planeEquation);
335 std::vector< vtkSmartPointer<vtkAxis> >
Axes;
463 float AxesBoundaryPoints[14][3];
469 float TickLabelOffset[3][2];
493 int DirectionToData[3];
498 double DataBounds[4];
502 void operator=(const
vtkChartXYZ &) VTK_DELETE_FUNCTION;
int SceneHeight
The height of the scene, as of the most recent call to Paint().
std::vector< vtkSmartPointer< vtkAxis > > Axes
The 3 axes of this chart.
bool AutoRotate
This boolean indicates whether or not we're using this chart to rotate on a timer.
data structure to represent key events.
int SceneWidth
The weight of the scene, as of the most recent call to Paint().
vtkNew< vtkTransform > PlotTransform
This transform translates and scales the plots' data points so that they appear within the axes of th...
base class for items that are part of a vtkContextScene.
virtual bool MouseButtonPressEvent(const vtkContextMouseEvent &mouse)
Mouse button down event Return true if the item holds the event, false if the event can be propagated...
vtkNew< vtkTransform > Scale
This transform keeps track of how the data points have been scaled (zoomed in or zoomed out) within t...
virtual bool Paint(vtkContext2D *painter)
Paint event for the item, called whenever the item needs to be drawn.
maintain a list of planes
vtkNew< vtkTransform > Rotation
This transform keeps track of how the chart has been rotated.
bool IsX
When we're in AutoRotate mode, this boolean tells us if we should rotate about the X axis or the Y ax...
Class for drawing 2D primitives to a graphical context.
vtkRectf Geometry
The size and position of this chart.
virtual bool MouseWheelEvent(const vtkContextMouseEvent &mouse, int delta)
Mouse wheel event, positive delta indicates forward movement of the wheel.
takes care of drawing 2D axes
data structure to represent mouse events.
double Angle
When we're in AutoRotate mode, this value tells the chart how much it should be rotated.
a simple class to control print indentation
std::string YAxisLabel
The label for the Y Axis.
std::string ZAxisLabel
The label for the Z Axis.
provides a pen that draws the outlines of shapes drawn by vtkContext2D.
vtkNew< vtkTransform > Translation
This transform keeps track of how the data points have been panned within the chart.
vtkSmartPointer< vtkAnnotationLink > Link
This link is used to share selected points with other classes.
virtual bool KeyPressEvent(const vtkContextKeyEvent &key)
Key press event.
dynamic, self-adjusting array of unsigned char
A table, which contains similar-typed columns of data.
vtkNew< vtkPen > AxisPen
This is the pen that is used to draw the axes.
virtual bool MouseMoveEvent(const vtkContextMouseEvent &mouse)
Mouse move event.
vtkNew< vtkTransform > ContextTransform
This is the transform that is applied when rendering data from the plots.
virtual bool Hit(const vtkContextMouseEvent &mouse)
Return true if the supplied x, y coordinate is inside the item.
bool FitToScene
This boolean indicates whether or not we should automatically resize the chart so that it snugly fill...
std::string XAxisLabel
The label for the X Axis.
Abstract class for 3D plots.
virtual void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
static vtkObject * New()
Create an object with Debug turned off, modified time initialized to zero, and reference counting on...
vtkNew< vtkPlaneCollection > BoundingCube
The six planes that define the bounding cube of our 3D axes.
vtkNew< vtkTransform > BoxScale
This transform keeps track of how the axes have been scaled (zoomed in or zoomed out).
std::vector< vtkPlot3D * > Plots
The plots that are drawn within this chart.
Factory class for drawing 3D XYZ charts.
vtkNew< vtkTransform > FutureBox
This transform is initialized as a copy of Box.
bool DrawAxesDecoration
This boolean indicates whether or not we should draw tick marks and axes labels.
virtual void Update()
Perform any updates to the item that may be necessary before rendering.
An algorithm for linking annotations among objects.
vtkNew< vtkTransform > FutureBoxScale
This transform keeps track of the Scale of the FutureBox transform.
vtkNew< vtkTransform > Box
This is the transform that is applied when rendering data from the plots.
vtkNew< vtkPen > Pen
This is the pen that is used to draw data from the plots.
Class for drawing 3D primitives to a graphical context.