IGLib 1.4
The IGLib base library for development of numerical, technical and business applications.

IG::Gr3d::VtkSurfacePlot Class Reference

Handles surface plots in VTK render window accessed through the VtkPlotter class. Generated surface plots are based on structured 2D meshes embedded in 3D. More...

Inheritance diagram for IG::Gr3d::VtkSurfacePlot:
Collaboration diagram for IG::Gr3d::VtkSurfacePlot:

List of all members.

Public Member Functions

 VtkSurfacePlot (VtkPlotter plotter)
 VtkSurfacePlot (VtkPlotter plotter, StructuredMesh2d3d mesh)
void SetBoundsParameters (double minX, double maxX, double minY, double maxY)
 Sets the bounds on reference coordinates used in generation of the surface grid.
void SetBoundsParameters (IBoundingBox bounds)
 Sets the bounds on reference coordinates used in generation of the surface grid.
void SetSurfaceDefinition (IFunc2d fX, IFunc2d fY, IFunc2d fZ)
 Sets the definition of parametric surface in 3D.
void SetSurfaceDefinition (IFunc3d2d functions)
 Sets the definition of parametric surface in 3D. Components of the specified 3D vector functions of 2D variables define indivitual coordinates on the surface dependent on the two parameters of the parametric surface (as 2D scalar functions).
void SetSurfaceDefinition (IFunc2d funcZ)
 Sets explicit definition of a surface as graph of a function of two variables.
void ClearSurfaceDefinition ()
 Removes any eventual definition of surface by functions (either parametric or explicit).
override void Create ()
 Creates the surface plot.

Public Attributes

IFunc3d _valueFunctionOfCoordinates = DefaultValueFunctionOfCoordinates

Static Public Attributes

static int DefaultNumX = 20
 Default number of surface gridpoints in the first grid direction (for structured grids).
static int DefaultNumY = 20
 Default numberof surface gridpoints in the second direction (for structured grids).
static BoundingBox2d DefaultBoundsParameters = new BoundingBox2d(-1, 1, -1, 1)
static IFunc3d DefaultValueFunctionOfCoordinates = new Func3dZ()
 Default function that specifies how values assigned to points on the plotted surface are generated.
static int DefaultNumContours = 20

Protected Member Functions

virtual void PrepareRandomMesh ()
virtual void PrepareMesh ()
 Prepares the mesh for surface plot.

Protected Attributes

bool _isContourPlot = false
 Whether the current oject is intended for creation of contour plots.
int _numContours = DefaultNumContours
 Number of contours.

Properties

int NumX [get, set]
 Number of gridpoints of the plotted surface in the first grid direction. Used for construction of surface grid when the surface is defined by functions.
int NumY [get, set]
 Number of gridpoints of the plotted surface in the second grid direction. Used for construction of surface grid when the surface is defined by functions.
bool RandomPoints [get, set]
 Selected points are distributed randomly on the surface.
BoundingBox2d BoundsParameters [get, set]
 Bounds on reference parameters used for generation of the surface grid.
BoundingBox1d BoundsPointValues [get, set]
 Bounds on values assigned to surface nodes.
IFunc2d Function [set]
 Sets function of 2 variables whose graph is plotted. The specified function represents explicit definition of surface.
IFunc2d FunctionX [get, set]
 The first component of a 3D vector function of 2 parameters that acts as parametric definition of the plotted surface.
IFunc2d FunctionY [get, set]
 The second component of a 3D vector function of 2 parameters that acts as parametric definition of the plotted surface.
IFunc2d FunctionZ [get, set]
 The third component of a scalar function of 2 parameters that acts as parametric definition of the plotted surface.
IFunc2d FuncAuxX [get]
 Auxiliary function used to adapt definition of parametric surface to definition by function of 2 variables.
IFunc2d FuncAuxY [get]
 Auxiliary function used to adapt definition of parametric surface to definition by function of 2 variables.
IFunc3d ValueFunctionOfCoordinates [get, set]
 3F function that defines dependence of value assigned to points on the surface on coordinates of that point. This function is used to assign values to points on the surface, which can then be used for plotting contours on the surface or for coloring surface.
StructuredMesh2d3d Mesh [get, set]
string ValuesFieldName [get, set]
 Name of the scalar field on the mesh where values assigned to grid points are stored. These values are assigned to the

Private Attributes

int _numX = DefaultNumX
int _numY = DefaultNumY
bool _randomPoints = false
BoundingBox2d _boundsParameters
BoundingBox1d _boundsPointValues
IFunc2d _functionX
IFunc2d _functionY
IFunc2d _functionZ
IFunc2d _funcAuxX
IFunc2d _funcAuxY
vec3[] RandomMesh
StructuredMesh2d3d _mesh
string _valuesFieldName = DefaultValuesFieldName

Detailed Description

Handles surface plots in VTK render window accessed through the VtkPlotter class.

Generated surface plots are based on structured 2D meshes embedded in 3D.

$A Igor xx Oct11;


Constructor & Destructor Documentation

IG::Gr3d::VtkSurfacePlot::VtkSurfacePlot ( VtkPlotter  plotter) [inline]
IG::Gr3d::VtkSurfacePlot::VtkSurfacePlot ( VtkPlotter  plotter,
StructuredMesh2d3d  mesh 
) [inline]

Member Function Documentation

void IG::Gr3d::VtkSurfacePlot::SetBoundsParameters ( double  minX,
double  maxX,
double  minY,
double  maxY 
) [inline]

Sets the bounds on reference coordinates used in generation of the surface grid.

Parameters:
minXLower bound for the first coordinate.
maxXUpper bound for the first coordinate.
minYLower bound for the second coordinate.
maxYUpper bound for the second coordinate.
void IG::Gr3d::VtkSurfacePlot::SetBoundsParameters ( IBoundingBox  bounds) [inline]

Sets the bounds on reference coordinates used in generation of the surface grid.

Parameters:
boundsNew bounds on parameters.
void IG::Gr3d::VtkSurfacePlot::SetSurfaceDefinition ( IFunc2d  fX,
IFunc2d  fY,
IFunc2d  fZ 
) [inline]

Sets the definition of parametric surface in 3D.

Parameters:
fXFunction that specifies the first component of coordinate of a surface point dependent on parameters of the parametrically defined surface.
fYFunction that specifies the second component of coordinate of a surface point dependent on parameters of the parametrically defined surface.
fZFunction that specifies the third component of coordinate of a surface point dependent on parameters of the parametrically defined surface.
void IG::Gr3d::VtkSurfacePlot::SetSurfaceDefinition ( IFunc3d2d  functions) [inline]

Sets the definition of parametric surface in 3D. Components of the specified 3D vector functions of 2D variables define indivitual coordinates on the surface dependent on the two parameters of the parametric surface (as 2D scalar functions).

Parameters:
functionsA 3D vector function of 2 variables. Each component (a 2D scalar function) defines dependence of one cartesian coordinate on two surface parameters.
void IG::Gr3d::VtkSurfacePlot::SetSurfaceDefinition ( IFunc2d  funcZ) [inline]

Sets explicit definition of a surface as graph of a function of two variables.

Parameters:
funcZFunction that deines the dependence of Z coordinate of a point on the surface on X and Y coordinates.
void IG::Gr3d::VtkSurfacePlot::ClearSurfaceDefinition ( ) [inline]

Removes any eventual definition of surface by functions (either parametric or explicit).

virtual void IG::Gr3d::VtkSurfacePlot::PrepareRandomMesh ( ) [inline, protected, virtual]
virtual void IG::Gr3d::VtkSurfacePlot::PrepareMesh ( ) [inline, protected, virtual]

Prepares the mesh for surface plot.

override void IG::Gr3d::VtkSurfacePlot::Create ( ) [inline, virtual]

Creates the surface plot.

Implements IG::Gr3d::VtkPlotBase.


Member Data Documentation

Default number of surface gridpoints in the first grid direction (for structured grids).

Default numberof surface gridpoints in the second direction (for structured grids).

Default function that specifies how values assigned to points on the plotted surface are generated.

bool IG::Gr3d::VtkSurfacePlot::_isContourPlot = false [protected]

Whether the current oject is intended for creation of contour plots.

This flags enables surface and contour plotting classes to share most functionality.

Number of contours.


Property Documentation

int IG::Gr3d::VtkSurfacePlot::NumX [get, set]

Number of gridpoints of the plotted surface in the first grid direction. Used for construction of surface grid when the surface is defined by functions.

Default value can be changed by setting DefaultNumX.

int IG::Gr3d::VtkSurfacePlot::NumY [get, set]

Number of gridpoints of the plotted surface in the second grid direction. Used for construction of surface grid when the surface is defined by functions.

Default value can be changed by setting DefaultNumY.

bool IG::Gr3d::VtkSurfacePlot::RandomPoints [get, set]

Selected points are distributed randomly on the surface.

BoundingBox2d IG::Gr3d::VtkSurfacePlot::BoundsParameters [get, set]

Bounds on reference parameters used for generation of the surface grid.

BoundingBox1d IG::Gr3d::VtkSurfacePlot::BoundsPointValues [get, set]

Bounds on values assigned to surface nodes.

IFunc2d IG::Gr3d::VtkSurfacePlot::Function [set]

Sets function of 2 variables whose graph is plotted. The specified function represents explicit definition of surface.

IFunc2d IG::Gr3d::VtkSurfacePlot::FunctionX [get, set]

The first component of a 3D vector function of 2 parameters that acts as parametric definition of the plotted surface.

IFunc2d IG::Gr3d::VtkSurfacePlot::FunctionY [get, set]

The second component of a 3D vector function of 2 parameters that acts as parametric definition of the plotted surface.

IFunc2d IG::Gr3d::VtkSurfacePlot::FunctionZ [get, set]

The third component of a scalar function of 2 parameters that acts as parametric definition of the plotted surface.

IFunc2d IG::Gr3d::VtkSurfacePlot::FuncAuxX [get, protected]

Auxiliary function used to adapt definition of parametric surface to definition by function of 2 variables.

IFunc2d IG::Gr3d::VtkSurfacePlot::FuncAuxY [get, protected]

Auxiliary function used to adapt definition of parametric surface to definition by function of 2 variables.

IFunc3d IG::Gr3d::VtkSurfacePlot::ValueFunctionOfCoordinates [get, set]

3F function that defines dependence of value assigned to points on the surface on coordinates of that point. This function is used to assign values to points on the surface, which can then be used for plotting contours on the surface or for coloring surface.

StructuredMesh2d3d IG::Gr3d::VtkSurfacePlot::Mesh [get, set]
string IG::Gr3d::VtkSurfacePlot::ValuesFieldName [get, set]

Name of the scalar field on the mesh where values assigned to grid points are stored. These values are assigned to the


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Enumerations Properties Events