Abstract base class for geometry slice plots. More...
#include <graph3d.hpp>
Public Member Functions | |
Graph3D () | |
Constructor. | |
virtual | ~Graph3D () |
Virtual destructor. | |
virtual void | plot (cairo_t *cairo, const Coordmapper *cm, const double range[4])=0 |
Plot graph with cairo. | |
virtual void | plot_sample (cairo_t *cairo, double x, double y, double width, double height)=0 |
Plot sample for legend. | |
virtual void | get_bbox (double bbox[4])=0 |
Get bounding box of drawable. | |
void | set_view (view_e view, int level) |
Set the view of 3D drawable. | |
![]() | |
virtual | ~Graph () |
Virtual destructor. | |
Protected Attributes | |
view_e | _view |
Geometry view direction. | |
int | _vb [3] |
Coordinate index for first, second and third axes. | |
int | _level |
Level of slice in mesh units. | |
Abstract base class for geometry slice plots.
Implementation of Graph. Used in Frame type plots.
Provides functionality to select a slice of geometry along axes at any mesh level in any direction. The direction is selected with view and level in integer (mesh count) level. Provides the child class with permutated coordinate indexes. The first coordinate (index vb[0]) will be used for the horizontal axis of the plot, the second coordinate (index vb[1]) for the vertical axis and the third coordinate (index vb[2]) for the level. In three dimensions all the views are possible. In two dimensions, only VIEW_XY and VIEW_YX are possible. Here there is no separate redial index, Y is used instead.
|
inline |
Constructor.
|
inlinevirtual |
Virtual destructor.
|
pure virtual |
Get bounding box of drawable.
Returns the bounding box of the drawable in array bbox in order xmin, ymin, xmax, ymax.
Implements Graph.
Implemented in EqPotGraph, ParticleGraph, FieldGraph, SolidGraph, and MeshGraph.
|
pure virtual |
Plot graph with cairo.
Plot the graph using cairo and coordinate mapper cm. The visible range of plot is given in array range in order xmin, ymin, xmax, ymax. The graph should be able to handle any range values. Also min > max.
Called by Frame during drawing.
Implements Graph.
Implemented in EqPotGraph, ParticleGraph, FieldGraph, SolidGraph, and MeshGraph.
|
pure virtual |
Plot sample for legend.
Plot graph sample for legend at cairo coordinates (x,y).
Implements Graph.
Implemented in EqPotGraph, ParticleGraph, FieldGraph, SolidGraph, and MeshGraph.
|
inline |
Set the view of 3D drawable.
Sets view direction to view and the view level to level.
|
protected |
Level of slice in mesh units.
|
protected |
Coordinate index for first, second and third axes.