IGLib 1.4
The IGLib base library for development of numerical, technical and business applications.
|
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...
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 |
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;
IG::Gr3d::VtkSurfacePlot::VtkSurfacePlot | ( | VtkPlotter | plotter | ) | [inline] |
IG::Gr3d::VtkSurfacePlot::VtkSurfacePlot | ( | VtkPlotter | plotter, |
StructuredMesh2d3d | mesh | ||
) | [inline] |
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.
minX | Lower bound for the first coordinate. |
maxX | Upper bound for the first coordinate. |
minY | Lower bound for the second coordinate. |
maxY | Upper 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.
bounds | New bounds on parameters. |
Sets the definition of parametric surface in 3D.
fX | Function that specifies the first component of coordinate of a surface point dependent on parameters of the parametrically defined surface. |
fY | Function that specifies the second component of coordinate of a surface point dependent on parameters of the parametrically defined surface. |
fZ | Function 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).
functions | A 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.
funcZ | Function 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.
int IG::Gr3d::VtkSurfacePlot::DefaultNumX = 20 [static] |
Default number of surface gridpoints in the first grid direction (for structured grids).
int IG::Gr3d::VtkSurfacePlot::DefaultNumY = 20 [static] |
Default numberof surface gridpoints in the second direction (for structured grids).
int IG::Gr3d::VtkSurfacePlot::_numX = DefaultNumX [private] |
int IG::Gr3d::VtkSurfacePlot::_numY = DefaultNumY [private] |
bool IG::Gr3d::VtkSurfacePlot::_randomPoints = false [private] |
BoundingBox2d IG::Gr3d::VtkSurfacePlot::DefaultBoundsParameters = new BoundingBox2d(-1, 1, -1, 1) [static] |
IFunc2d IG::Gr3d::VtkSurfacePlot::_functionX [private] |
IFunc2d IG::Gr3d::VtkSurfacePlot::_functionY [private] |
IFunc2d IG::Gr3d::VtkSurfacePlot::_functionZ [private] |
IFunc2d IG::Gr3d::VtkSurfacePlot::_funcAuxX [private] |
IFunc2d IG::Gr3d::VtkSurfacePlot::_funcAuxY [private] |
IFunc3d IG::Gr3d::VtkSurfacePlot::DefaultValueFunctionOfCoordinates = new Func3dZ() [static] |
Default function that specifies how values assigned to points on the plotted surface are generated.
vec3 [] IG::Gr3d::VtkSurfacePlot::RandomMesh [private] |
string IG::Gr3d::VtkSurfacePlot::_valuesFieldName = DefaultValuesFieldName [private] |
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.
int IG::Gr3d::VtkSurfacePlot::DefaultNumContours = 20 [static] |
int IG::Gr3d::VtkSurfacePlot::_numContours = DefaultNumContours [protected] |
Number of contours.
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