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

- Main Page
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros
Classes | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Properties | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
IG.Gr3d.VtkPlotBase Class Referenceabstract

Base class for plotting classes that plot on VTK windows (class VtkPlotter). More...

Inheritance diagram for IG.Gr3d.VtkPlotBase:
[legend]
Collaboration diagram for IG.Gr3d.VtkPlotBase:
[legend]

## Classes
class | ExampleFunc2dLinear
| Function f(x,y)=x+y. More...
class | ExampleFunc2dShifted
| Function defined as some other function shifted for the specified value. More...
class | ExampleFunc2dSquare
| Function f(x,y)=x*x+y*y. More...
class | ExampleFunc2dXY
| Function f(x,y)=x*y. More...
class | ExampleFuncDiff
| Difference between the two auxiliary functions. More...
class | ExampleFunctionTorusKnot
| Functions for all 3 co-ordinates of parametric curve definition of a p-q torus knot . Used in the ExampleCurvePlotTorusKnot. More...
class | ExampleSineFunctionForLissajous
| Sine function with the specified frequency factor and phase. Used in the ExampleLissajous. More...
class | ExampleValueFunctionDiff21
| 3D function of coordinates that returns difference between func2 and func1 at the first two coordinates. More...
class | Func2dX
| 2D function that returns the first parameter. Used as the first componnet of parametric definition of surfce that is defined by a single function of 2 variables. More...
class | Func2dY
| 2D function that returns the second parameter. Used as the second componnet of parametric definition of surfce that is defined by a single function of 2 variables. More...
class | Func2dZero
| Auxiliary 2D function that returns 0. More...
class | Func3dZ
| 3D function that returns the third component of its 3D vector argument. Used e.g. for coloring graphs by heights. More...
class | Func3dZero
| 3D function that returns 0. Used e.g. for coloring graphs by heights. More...

## Public Member Functions
| VtkPlotBase (VtkPlotter plotter)
| Constructor. More...
bool | ContainsActor (vtkActor actor)
| Returns true if the specified VTK Actor is contained on (registered with) the current VtkPlotBase object, or false otherwise. More...
void | AddActor (vtkActor actor)
| Adds the specified actor to the list of actors of the current VTK plotter. More...
void | AddActors (params vtkActor[] actors)
| Adds the specified actors to the list of actors of the current VTK plotter. More...
void | AddActorsToPlotter ()
| Adds all actors from the current plot to the plotter that this plot is assigned to. More...
void | AddActorsToPlotter (VtkPlotter plotter)
| Adds all actors from the current plot to the specified plotter. More...
void | RemoveActor (vtkActor actor)
| Removes the specified actor from the list of actors of the current VTK plotter, and disposes unmanaged resources used by that object. More...
void | RemoveActors (params vtkActor[] actors)
| Removes the specified actors from the list of actors of the current VTK plotter, and disposes unmanaged resources used by that objects. More...
void | RemoveActors ()
| Removes all actors that are currently contained on the list of actors of the current object. More...
void | UpdateBoundsOnActors (IBoundingBox bounds)
| Updates the specified bounding box in such a way that all actors from the current plot object fit into it. More...
void | ScaleActors ()
| Scales all actors on the current plot by the plotter's scaling method. More...
bool | ContainsAlgorithm (vtkAlgorithm algorithm)
| Returns true if the specified VTK algorithm is contained on (registered with) the current VtkPlotter object, or false otherwise. More...
void | AddAlgorithm (vtkAlgorithm algorithm)
| Adds the specified algorithm to the list of algorithms of the current VTK plotter. More...
void | AddAlgorithms (params vtkAlgorithm[] algorithms)
| Adds the specified algorithms to the list of algorithms of the current VTK plotter. More...
void | RemoveAlgorithm (vtkAlgorithm algorithm)
| Removes the specified algorithm from the list of algorithms of the current VTK plotter, and disposes unmanaged resources used by that object. More...
void | RemoveAlgorithms (params vtkAlgorithm[] algorithms)
| Removes the specified algorithms from the list of algorithms of the current VTK plotter, and disposes unmanaged resources used by that objects. More...
bool | ContainsMapper (vtkMapper mapper)
| Returns true if the specified VTK mapper is contained on (registered with) the current VtkPlotter object, or false otherwise. More...
void | AddMapper (vtkMapper mapper)
| Adds the specified mapper to the list of mappers of the current VTK plotter. More...
void | AddMappers (params vtkMapper[] mappers)
| Adds the specified mappers to the list of mappers of the current VTK plotter. More...
void | RemoveMapper (vtkMapper mapper)
| Removes the specified mapper from the list of mappers of the current VTK plotter, and disposes unmanaged resources used by that object. More...
void | RemoveMappers (params vtkMapper[] mappers)
| Removes the specified mappers from the list of mappers of the current VTK plotter, and disposes unmanaged resources used by that objects. More...
bool | ContainsDataset (vtkDataSet dataset)
| Returns true if the specified VTK dataset is contained on (registered with) the current VtkPlotter object, or false otherwise. More...
void | AddDataset (vtkDataSet dataset)
| Adds the specified dataset to the list of datasets of the current VTK plotter. More...
void | AddDatasets (params vtkDataSet[] datasets)
| Adds the specified datasets to the list of datasets of the current VTK plotter. More...
void | RemoveDataset (vtkDataSet dataset)
| Removes the specified dataset from the list of datasets of the current VTK plotter, and disposes unmanaged resources used by that object. More...
void | RemoveDatasets (params vtkDataSet[] datasets)
| Removes the specified datasets from the list of datasets of the current VTK plotter, and disposes unmanaged resources used by that objects. More...
void | UpdateBoundsCoordinates (bool forced, double x, double y, double z)
| Updates the bounding box of coordinates (BoundsCoordinates), if the conditions are met, in such a way that the point with the specified coordinates fits witin it. More...
void | UpdateBoundsCoordinates (double x, double y, double z)
| Updates the bounding box of coordinates (BoundsCoordinates), if the AutoUpdateBoundsCoordinates flag is true, in such a way that the point with the specified coordinates fits witin it. More...
void | UpdateBoundsCoordinates (bool forced, vec3 pointCoordinates)
| Updates the bounding box of coordinates (BoundsCoordinates), if the conditions are met, in such a way that the point with the specified coordinates fits witin it. More...
void | UpdateBoundsCoordinates (vec3 pointCoordinates)
| Updates the bounding box of coordinates (BoundsCoordinates), if the AutoUpdateBoundsCoordinates flag is true, in such a way that the point with the specified coordinates fits witin it. More...
abstract void | Create ()
| Creates the plot. More...
virtual void | ShowPlot ()
| Makes the associated plotter show the plots that are currently added. More...
virtual void | CreateAndShow ()
| Creates the plot and makes the associated plotter show it. More...
void | Dispose ()
| Implementation of IDisposable interface. More...

## Static Public Member Functions
static void | ExampleCustomSurfaceComparison ()
| Custom comparison of two surfaces in 3D defined as functions of two variables. More...
static void | ExampleCurvePlotLissajous ()
| Example curve plot. Plots a curve whose projection on the XY plane is a Lissajous curve, but which also oscillates in the Z direction. More...
static void | ExampleCurvePlotLissajous (int a, int b)
| Example curve plot. Plots a curve whose projection on the XY plane is a Lissajous curve, but which also oscillates in the Z direction. More...
static void | ExampleCurvePlotTorusKnot ()
| Example curve plot. Plots a curve whose projection on the XY plane is a Lissajous curve, but which also oscillates in the Z direction. More...
static void | ExampleCurvePlotTorusKnot (int p, int q)
| Example curve plot. Plots a two-parameters torus knot. Parameters must be coprimes. More...
static void | ExamplePlotterDecoration ()
| Example that demonstrates how various plotter decorations can be set up. More...
static void | ExampleSurfacePlot ()
| Example of surface plots. More...
static void | ExampleSurfacePlotScaled ()
| Example of surface plots where graph is scaled automaticallly. More...
static void | ExampleSurfacePlotScaled (int numX, int numY)
| Example of surface plots where graph is scaled automatically. More...
static void | ExampleSurfacePlotManualScaled ()
| Example of surface plots where mesh is generated manually. Also shows scaling of graph. More...
static void | ExampleSurfacePlotManualScaled (int numX, int numY)
| Example of surface plots where mesh is generated manually. Also shows scaling of graph. More...
static void | ExampleContourPlot ()
| Examples of contour plots. More...
static void | CopyBounds (Func3d2dExamples.ParametricSurface func, VtkSurfacePlot plot)
| Copies bounds on parameters from the function definition of parametric surface to a plot object for plotting surfaces. More...
static void | ExampleParametricSurfacePlots ()
| Examples of various parametric surface plots. More...

## Protected Member Functions
virtual void | Dispose (bool disposing)
| Does the job of freeing resources. More...

## Protected Attributes
List< vtkActor > | _actors
List< vtkAlgorithm > | _algorithms
List< vtkMapper > | _mappers
List< vtkDataSet > | _dataSets
bool | _autoUpdateBoundsCoordinates = true

## Properties
object | Lock`[get]`
| This object's central lock object to be used by other object. Do not use this object for locking in class' methods, for this you should use InternalLock. More...
int | OutputLevel`[get, set]`
| Level of output to the console for the current object. The defalult output level for newly created object is specified by VtkPlotter.DefaultOutputLevel. More...
StopWatch1 | Timer`[get]`
| Stopwatch that can be used to measure the time efficiency of actions. More...
color | BackGround`[get, set]`
| Sets background color of the plotter that is used by the current plot object. More...
VtkPlotter | Plotter`[get, set]`
| VTK plotter that is used for rendering graphics produeced by the current plotting class, on a VTK rendering window. More...
List< vtkActor > | Actors`[get, set]`
| List of actors contained on the current class. More...
List< vtkAlgorithm > | algorithms`[get, set]`
| List of algorithms contained on the current class. More...
List< vtkMapper > | Mappers`[get, set]`
| List of mappers contained on the current class. More...
List< vtkDataSet > | DataSets`[get, set]`
| List of datasets contained on the current class. More...
bool | AutoUpdateBoundsCoordinates`[get, set]`
| Determines whether bounds on plotted geometry are automatically updated when new primitives are added. More...
BoundingBox3d | BoundsCoordinates`[get, protected set]`
| Bounds on coordinates of points that define the plots. everything on the plot should fit in these bounds. More...
Properties inherited from IG.Lib.ILockable
object | Lock`[get]`

## Private Member Functions
| VtkPlotBase ()
| Prevent calling argument-less constructor in derived classes. More...
| ~VtkPlotBase ()

## Private Attributes
object | _mainLock = new object()
int | _outputLevel = VtkPlotter.DefaultOutputLevel
StopWatch1 | _timer
VtkPlotter | _plotter
BoundingBox3d | _boundsCoordinates
bool | disposed = false

## Static Private Attributes
static IFunc2d | func1 = new ExampleFunc2dShifted(new ExampleFunc2dSquare(), 0.5)
| First uxiliary function used in examples. More...
static IFunc2d | func2 = new ExampleFunc2dXY()
| Second uxiliary function used in examples. More...

## Detailed Description

Base class for plotting classes that plot on VTK windows (class VtkPlotter).

Classes derived from this class produce pecific plots (such as surface or line plots) on the related VTK rendering window.

Interaction with a VTK rendering window is managed by an VtkPlotter

object.

$A Igor xx Nov11;

## Constructor & Destructor Documentation

IG.Gr3d.VtkPlotBase.VtkPlotBase | ( |  | ) |
| inline private

Prevent calling argument-less constructor in derived classes.

IG.Gr3d.VtkPlotBase.VtkPlotBase | ( | VtkPlotter | plotter | ) |
| inline

Constructor.

Parameters

  plotter | VTK plotter that is used for rendering graphics produeced by the current plotting class.

References IG.Gr3d.VtkPlotter.AddPlotObject().

IG.Gr3d.VtkPlotBase.~VtkPlotBase | ( |  | ) |
| inline private

## Member Function Documentation

bool IG.Gr3d.VtkPlotBase.ContainsActor | ( | vtkActor | actor | ) |
| inline

Returns true if the specified VTK Actor is contained on (registered with) the current VtkPlotBase object, or false otherwise.

Parameters

  actor | Actor whose existent on the list is checked for.

Returns

void IG.Gr3d.VtkPlotBase.AddActor | ( | vtkActor | actor | ) |
| inline

Adds the specified actor to the list of actors of the current VTK plotter.

If the object is already on the list of actors then it is not inserted again.

Parameters

  actor | VTK Actor to be added on the currrent VtkPlotter object.

void IG.Gr3d.VtkPlotBase.AddActors | ( | params vtkActor[] | actors | ) |
| inline

Adds the specified actors to the list of actors of the current VTK plotter.

Parameters

  actors | Objects to be added to the list.

void IG.Gr3d.VtkPlotBase.AddActorsToPlotter | ( |  | ) |
| inline

Adds all actors from the current plot to the plotter that this plot is assigned to.

Referenced by IG.Gr3d.VtkPlotter.ShowFormContainerInThread().

void IG.Gr3d.VtkPlotBase.AddActorsToPlotter | ( | VtkPlotter | plotter | ) |
| inline

Adds all actors from the current plot to the specified plotter.

Parameters

  plotter | Plotter to which actors from the current plot are added.

void IG.Gr3d.VtkPlotBase.RemoveActor | ( | vtkActor | actor | ) |
| inline

Removes the specified actor from the list of actors of the current VTK plotter, and disposes unmanaged resources used by that object.

If the specified object is not on the list of actors then nothing happens.

Parameters

  actor | VTK Actor to be removed from the currrent VtkPlotter object.

void IG.Gr3d.VtkPlotBase.RemoveActors | ( | params vtkActor[] | actors | ) |
| inline

Removes the specified actors from the list of actors of the current VTK plotter, and disposes unmanaged resources used by that objects.

If no objects are specified then nothing happens. Also for the specified objects that are null or are not on the list, nothing happens. If removing one of the objects throws an exception then the remaining objects are removed without any disturbance.

Parameters

  actors | Objects to be removed from the list.

Referenced by IG.Gr3d.VtkPlotBase.ExampleParametricSurfacePlots(), and IG.Gr3d.VtkPlotBase.ExampleSurfacePlot().

void IG.Gr3d.VtkPlotBase.RemoveActors | ( |  | ) |
| inline

Removes all actors that are currently contained on the list of actors of the current object.

void IG.Gr3d.VtkPlotBase.UpdateBoundsOnActors | ( | IBoundingBox | bounds | ) |
| inline

Updates the specified bounding box in such a way that all actors from the current plot object fit into it.

Parameters

  bounds | Bounds to be updated.

References IG.Num.IBoundingBox.Update().

Referenced by IG.Gr3d.VtkPlotter.CalculateBoundsFromPlotsActors().

void IG.Gr3d.VtkPlotBase.ScaleActors | ( |  | ) |
| inline

Scales all actors on the current plot by the plotter's scaling method.

References IG.Gr3d.VtkPlotter.ScaleActorPlain().

Referenced by IG.Gr3d.VtkPlotter.ScaleActors().

bool IG.Gr3d.VtkPlotBase.ContainsAlgorithm | ( | vtkAlgorithm | algorithm | ) |
| inline

Returns true if the specified VTK algorithm is contained on (registered with) the current VtkPlotter object, or false otherwise.

Parameters

  algorithm | object to be checked.

void IG.Gr3d.VtkPlotBase.AddAlgorithm | ( | vtkAlgorithm | algorithm | ) |
| inline

Adds the specified algorithm to the list of algorithms of the current VTK plotter.

If the object is already on the list of algorithms then it is not inserted again.

Parameters

  algorithm | VTK algorithm to be added on the currrent VtkPlotter object.

void IG.Gr3d.VtkPlotBase.AddAlgorithms | ( | params vtkAlgorithm[] | algorithms | ) |
| inline

Adds the specified algorithms to the list of algorithms of the current VTK plotter.

Parameters

  algorithms | Objects to be added to the list.

void IG.Gr3d.VtkPlotBase.RemoveAlgorithm | ( | vtkAlgorithm | algorithm | ) |
| inline

Removes the specified algorithm from the list of algorithms of the current VTK plotter, and disposes unmanaged resources used by that object.

If the specified object is not on the list of algorithms then nothing happens.

Parameters

  algorithm | VTK algorithm to be removed from the currrent VtkPlotter object.

void IG.Gr3d.VtkPlotBase.RemoveAlgorithms | ( | params vtkAlgorithm[] | algorithms | ) |
| inline

Removes the specified algorithms from the list of algorithms of the current VTK plotter, and disposes unmanaged resources used by that objects.

If no objects are specified then nothing happens. Also for the specified objects that are null or are not on the list, nothing happens. If removing one of the objects throws an exception then the remaining objects are removed without any disturbance.

Parameters

  algorithms | Objects to be removed from the list.

bool IG.Gr3d.VtkPlotBase.ContainsMapper | ( | vtkMapper | mapper | ) |
| inline

Returns true if the specified VTK mapper is contained on (registered with) the current VtkPlotter object, or false otherwise.

Parameters

  mapper | Mapper to be checked.

void IG.Gr3d.VtkPlotBase.AddMapper | ( | vtkMapper | mapper | ) |
| inline

Adds the specified mapper to the list of mappers of the current VTK plotter.

If the object is already on the list of mappers then it is not inserted again.

Parameters

  mapper | VTK mapper to be added on the currrent VtkPlotter object.

void IG.Gr3d.VtkPlotBase.AddMappers | ( | params vtkMapper[] | mappers | ) |
| inline

Adds the specified mappers to the list of mappers of the current VTK plotter.

Parameters

  mappers | Objects to be added to the list.

void IG.Gr3d.VtkPlotBase.RemoveMapper | ( | vtkMapper | mapper | ) |
| inline

Removes the specified mapper from the list of mappers of the current VTK plotter, and disposes unmanaged resources used by that object.

If the specified object is not on the list of mappers then nothing happens.

Parameters

  mapper | VTK mapper to be removed from the currrent VtkPlotter object.

void IG.Gr3d.VtkPlotBase.RemoveMappers | ( | params vtkMapper[] | mappers | ) |
| inline

Removes the specified mappers from the list of mappers of the current VTK plotter, and disposes unmanaged resources used by that objects.

If no objects are specified then nothing happens. Also for the specified objects that are null or are not on the list, nothing happens. If removing one of the objects throws an exception then the remaining objects are removed without any disturbance.

Parameters

  mappers | Objects to be removed from the list.

bool IG.Gr3d.VtkPlotBase.ContainsDataset | ( | vtkDataSet | dataset | ) |
| inline

Returns true if the specified VTK dataset is contained on (registered with) the current VtkPlotter object, or false otherwise.

Parameters

  dataset | dataset to be checked.

void IG.Gr3d.VtkPlotBase.AddDataset | ( | vtkDataSet | dataset | ) |
| inline

Adds the specified dataset to the list of datasets of the current VTK plotter.

If the object is already on the list of datasets then it is not inserted again.

Parameters

  dataset | VTK dataset to be added on the currrent VtkPlotter object.

void IG.Gr3d.VtkPlotBase.AddDatasets | ( | params vtkDataSet[] | datasets | ) |
| inline

Adds the specified datasets to the list of datasets of the current VTK plotter.

Parameters

  datasets | Objects to be added to the list.

void IG.Gr3d.VtkPlotBase.RemoveDataset | ( | vtkDataSet | dataset | ) |
| inline

Removes the specified dataset from the list of datasets of the current VTK plotter, and disposes unmanaged resources used by that object.

If the specified object is not on the list of datasets then nothing happens.

Parameters

  dataset | VTK dataset to be removed from the currrent VtkPlotter object.

void IG.Gr3d.VtkPlotBase.RemoveDatasets | ( | params vtkDataSet[] | datasets | ) |
| inline

Removes the specified datasets from the list of datasets of the current VTK plotter, and disposes unmanaged resources used by that objects.

If no objects are specified then nothing happens. Also for the specified objects that are null or are not on the list, nothing happens. If removing one of the objects throws an exception then the remaining objects are removed without any disturbance.

Parameters

  datasets | Objects to be removed from the list.

void IG.Gr3d.VtkPlotBase.UpdateBoundsCoordinates | ( | bool | forced,
|  | double | x,
|  | double | y,
|  | double | z
| ) |  |
| inline

Updates the bounding box of coordinates (BoundsCoordinates), if the conditions are met, in such a way that the point with the specified coordinates fits witin it.

Conditions are met if the forced flag is true or the AutoUpdateBoundsCoordinates flag is true.

Parameters

  forced | Flag for forced update. If true then update is performed even if the auto updating flg (AutoUpdateBoundsCoordinates) is false.
  x | X coordinate of the point to fit within the bounding box.
  y | Y coordinate of the point to fit within the bounding box.
  z | Z coordinate of the point to fit within the bounding box.

References IG.Num.BoundingBox3d.Update().

void IG.Gr3d.VtkPlotBase.UpdateBoundsCoordinates | ( | double | x,
|  | double | y,
|  | double | z
| ) |  |
| inline

Updates the bounding box of coordinates (BoundsCoordinates), if the AutoUpdateBoundsCoordinates flag is true, in such a way that the point with the specified coordinates fits witin it.

(AutoUpdateBoundsCoordinates) is false.

Parameters

  x | X coordinate of the point to fit within the bounding box.
  y | Y coordinate of the point to fit within the bounding box.
  z | Z coordinate of the point to fit within the bounding box.

References IG.Num.BoundingBox3d.Update().

void IG.Gr3d.VtkPlotBase.UpdateBoundsCoordinates | ( | bool | forced,
|  | vec3 | pointCoordinates
| ) |  |
| inline

Updates the bounding box of coordinates (BoundsCoordinates), if the conditions are met, in such a way that the point with the specified coordinates fits witin it.

Conditions are met if the forced flag is true or the AutoUpdateBoundsCoordinates flag is true.

Parameters

  forced | Flag for forced update. If true then update is performed even if the auto updating flg (AutoUpdateBoundsCoordinates) is false.
  pointCoordinates | Coordinates of the point to fit within the bounding box.

References IG.Num.BoundingBox3d.Update().

void IG.Gr3d.VtkPlotBase.UpdateBoundsCoordinates | ( | vec3 | pointCoordinates | ) |
| inline

Updates the bounding box of coordinates (BoundsCoordinates), if the AutoUpdateBoundsCoordinates flag is true, in such a way that the point with the specified coordinates fits witin it.

(AutoUpdateBoundsCoordinates) is false.

Parameters

  pointCoordinates | Coordinates of the point to fit within the bounding box.

References IG.Num.BoundingBox3d.Update().

abstract void IG.Gr3d.VtkPlotBase.Create | ( |  | ) |
| pure virtual

Creates the plot.

Implemented in IG.Gr3d.VtkSurfacePlot, and IG.Gr3d.VtkCurvePlot.

virtual void IG.Gr3d.VtkPlotBase.ShowPlot | ( |  | ) |
| inline virtual

Makes the associated plotter show the plots that are currently added.

Warning: this does not create a plot.

Referenced by IG.Gr3d.VtkPlotBase.ExampleSurfacePlot(), IG.Gr3d.VtkPlotBase.ExampleSurfacePlotManualScaled(), IG.Gr3d.VtkPlotBase.ExampleSurfacePlotScaled(), IG.Forms.VectorFunctionPlotter2d.PlotParametricTest(), and IG.Script.ScriptGraphics3DBase.SurfaceFunctionTwoToruses().

virtual void IG.Gr3d.VtkPlotBase.CreateAndShow | ( |  | ) |
| inline virtual

Creates the plot and makes the associated plotter show it.

Referenced by IG.Gr3d.VtkPlotBase.ExampleContourPlot(), IG.Gr3d.VtkPlotBase.ExampleCustomSurfaceComparison(), IG.Gr3d.VtkPlotBase.ExampleParametricSurfacePlots(), IG.Gr3d.VtkPlotBase.ExampleSurfacePlot(), IG.Script.ScriptGraphics3DBase.SurfaceFunctionKleinBottle(), and IG.Script.ScriptGraphics3DBase.SurfaceFunctionSnailShell().

void IG.Gr3d.VtkPlotBase.Dispose | ( |  | ) |
| inline

Implementation of IDisposable interface.

Referenced by IG.Gr3d.VtkPlotter.RemovePlotObject().

virtual void IG.Gr3d.VtkPlotBase.Dispose | ( | bool | disposing | ) |
| inline protected virtual

Does the job of freeing resources.

This method can be eventually overridden in derived classes (if they use other resources that must be freed - in addition to such resources of the current class). In the case of overriding this method, you should usually call the base.Dispose(disposing ). in the overriding method.

Parameters

  disposing | Tells whether the method has been called form Dispose() method.

static void IG.Gr3d.VtkPlotBase.ExampleCustomSurfaceComparison | ( |  | ) |
| inline static

Custom comparison of two surfaces in 3D defined as functions of two variables.

On the main surface, wireframe is shown, surface is transparent and its color varies according to difference with the other surface.

The second surface is a wireframe and is very transparent.

References IG.Gr3d.VtkSurfacePlot.Create(), IG.Lib.ColorScaleBase.Create(), IG.Gr3d.VtkPlotBase.CreateAndShow(), IG.Lib.ColorScaleBase.CreateRainbow(), IG.Gr3d.VtkSurfacePlotBase.LineColor, IG.Gr3d.VtkSurfacePlotBase.LineColorIsScaled, IG.Gr3d.VtkSurfacePlotBase.LineColorScale, IG.Gr3d.VtkSurfacePlotBase.LinesVisible, IG.Gr3d.VtkSurfacePlotBase.LineWidth, IG.Gr3d.VtkContourPlot.NumContours, IG.Gr3d.VtkSurfacePlot.NumX, IG.Gr3d.VtkSurfacePlot.NumY, IG.Gr3d.VtkPlotBase.OutputLevel, IG.Gr3d.VtkSurfacePlotBase.PointColor, IG.Gr3d.VtkSurfacePlotBase.PointSize, IG.Gr3d.VtkSurfacePlotBase.PointsVisible, IG.Gr3d.VtkSurfacePlot.SetBoundsParameters(), IG.Gr3d.VtkSurfacePlot.SetSurfaceDefinition(), IG.Gr3d.VtkSurfacePlotBase.SurfaceColor, IG.Gr3d.VtkSurfacePlotBase.SurfaceColorIsScaled, IG.Gr3d.VtkSurfacePlotBase.SurfaceColorOpacity, IG.Gr3d.VtkSurfacePlotBase.SurfaceColorScale, IG.Gr3d.VtkSurfacePlotBase.SurfacesVisible, and IG.Gr3d.VtkSurfacePlot.ValueFunctionOfCoordinates.

Referenced by IG.Script.ScriptGraphics3DBase.Plot3dFunctionSurfaceComparison().

static void IG.Gr3d.VtkPlotBase.ExampleCurvePlotLissajous | ( |  | ) |
| inline static

Example curve plot. Plots a curve whose projection on the XY plane is a Lissajous curve, but which also oscillates in the Z direction.

Referenced by IG.Script.ScriptGraphics3DBase.Plot3dFunctionCurvePlotLissajous().

static void IG.Gr3d.VtkPlotBase.ExampleCurvePlotLissajous | ( | int | a,
|  | int | b
| ) |  |
| inline static

Example curve plot. Plots a curve whose projection on the XY plane is a Lissajous curve, but which also oscillates in the Z direction.

Parameters

  a | First parameter of the plotted Lissajous curve.
  b | Second parameter of the plotted Lissajous curve.

Lissajous curves are well known from fugures created on oscilloscopes when the apparatus is connected to two oscillating voltages with different frequences (in ratios that can be )

References IG.Gr3d.VtkCurvePlot.Create(), IG.Lib.ColorScaleBase.CreateBlueYellow(), IG.Lib.ColorScaleBase.CreateRainbow(), IG.Gr3d.VtkSurfacePlotBase.LineColor, IG.Gr3d.VtkSurfacePlotBase.LineColorIsScaled, IG.Gr3d.VtkSurfacePlotBase.LineColorScale, IG.Gr3d.VtkSurfacePlotBase.LinesVisible, IG.Gr3d.VtkSurfacePlotBase.LineWidth, IG.Gr3d.VtkCurvePlot.NumX, IG.Gr3d.VtkPlotBase.OutputLevel, IG.Gr3d.VtkSurfacePlotBase.PointColor, IG.Gr3d.VtkSurfacePlotBase.PointColorIsScaled, IG.Gr3d.VtkSurfacePlotBase.PointColorScale, IG.Gr3d.VtkSurfacePlotBase.PointSize, IG.Gr3d.VtkSurfacePlotBase.PointsVisible, IG.Gr3d.VtkCurvePlot.SetBoundsReference(), IG.Gr3d.VtkCurvePlot.SetCurveDefinition(), and IG.Gr3d.VtkPlotter.ShowPlot().

static void IG.Gr3d.VtkPlotBase.ExampleCurvePlotTorusKnot | ( |  | ) |
| inline static

Example curve plot. Plots a curve whose projection on the XY plane is a Lissajous curve, but which also oscillates in the Z direction.

static void IG.Gr3d.VtkPlotBase.ExampleCurvePlotTorusKnot | ( | int | p,
|  | int | q
| ) |  |
| inline static

Example curve plot. Plots a two-parameters torus knot. Parameters must be coprimes.

Parameters

  p | First parameter of the torus knot.
  q | Second parameter of the torus knot.

Lissajous curves are well known from fugures created on oscilloscopes when the apparatus is connected to two oscillating voltages with different frequences (in ratios that can be )

References IG.Gr3d.VtkCurvePlot.Create(), IG.Lib.ColorScaleBase.CreateBlueYellow(), IG.Lib.ColorScaleBase.CreateRainbow(), IG.Gr3d.VtkSurfacePlotBase.LineColor, IG.Gr3d.VtkSurfacePlotBase.LineColorIsScaled, IG.Gr3d.VtkSurfacePlotBase.LineColorScale, IG.Gr3d.VtkSurfacePlotBase.LinesVisible, IG.Gr3d.VtkSurfacePlotBase.LineWidth, IG.Gr3d.VtkCurvePlot.NumX, IG.Gr3d.VtkPlotBase.OutputLevel, IG.Gr3d.VtkSurfacePlotBase.PointColor, IG.Gr3d.VtkSurfacePlotBase.PointColorIsScaled, IG.Gr3d.VtkSurfacePlotBase.PointColorScale, IG.Gr3d.VtkSurfacePlotBase.PointSize, IG.Gr3d.VtkSurfacePlotBase.PointsVisible, IG.Gr3d.VtkCurvePlot.SetBoundsReference(), IG.Gr3d.VtkCurvePlot.SetCurveDefinition(), and IG.Gr3d.VtkPlotter.ShowPlot().

static void IG.Gr3d.VtkPlotBase.ExamplePlotterDecoration | ( |  | ) |
| inline static

Example that demonstrates how various plotter decorations can be set up.

References IG.Gr3d.VtkPlotter.BackGround, IG.Gr3d.VtkSurfacePlot.BoundsPointValues, IG.Gr3d.VtkSurfacePlot.Create(), IG.Gr3d.VtkDecorationHandler.CubeAxesFlyMode, IG.Gr3d.VtkDecorationHandler.CubeAxesXLabel, IG.Gr3d.VtkDecorationHandler.CubeAxesYLabel, IG.Gr3d.VtkDecorationHandler.CubeAxesZLabel, IG.Gr3d.VtkPlotter.DecorationHandler, IG.Gr3d.VtkPlotter.IsScaled, IG.Gr3d.VtkDecorationHandler.LegendBoxTitles, IG.Gr3d.VtkSurfacePlotBase.LineColorIsScaled, IG.Gr3d.VtkSurfacePlotBase.LineWidth, IG.Gr3d.VtkDecorationHandler.LookUpTableColorScale, IG.Gr3d.VtkDecorationHandler.LookUpTableMaxRange, IG.Gr3d.VtkDecorationHandler.LookUpTableMinRange, IG.Num.BoundingBox1d.MaxX, IG.Num.BoundingBox1d.MinX, IG.Gr3d.VtkSurfacePlot.NumX, IG.Gr3d.VtkSurfacePlot.NumY, IG.Gr3d.VtkPlotBase.OutputLevel, IG.Gr3d.VtkSurfacePlotBase.PointSize, IG.Gr3d.VtkSurfacePlotBase.PointsVisible, IG.Gr3d.VtkDecorationHandler.ScalarBarNumberOfLabels, IG.Gr3d.VtkDecorationHandler.ScalarBarTitle, IG.Gr3d.VtkSurfacePlot.SetBoundsParameters(), IG.Gr3d.VtkSurfacePlot.SetSurfaceDefinition(), IG.Gr3d.VtkDecorationHandler.ShowCubeAxes, IG.Gr3d.VtkDecorationHandler.ShowLegendBox, IG.Gr3d.VtkPlotter.ShowPlot(), IG.Gr3d.VtkDecorationHandler.ShowScalarBar, and IG.Gr3d.VtkSurfacePlotBase.SurfaceColorIsScaled.

Referenced by IG.Script.ScriptGraphics3DBase.Plot3dFunctionDecoration().

static void IG.Gr3d.VtkPlotBase.ExampleSurfacePlot | ( |  | ) |
| inline static

Example of surface plots.

References IG.Gr3d.VtkSurfacePlotBase.AddLine(), IG.Gr3d.VtkSurfacePlotBase.AddPoint(), IG.Gr3d.VtkSurfacePlot.Create(), IG.Gr3d.VtkPlotBase.CreateAndShow(), IG.Gr3d.VtkSurfacePlotBase.CreateCustomPlot(), IG.Gr3d.VtkSurfacePlotBase.LineColor, IG.Gr3d.VtkSurfacePlotBase.LineColorIsScaled, IG.Gr3d.VtkSurfacePlotBase.LineWidth, IG.Num.IRandomGenerator.NextDouble(), IG.Gr3d.VtkSurfacePlot.NumX, IG.Gr3d.VtkSurfacePlot.NumY, IG.Gr3d.VtkPlotBase.OutputLevel, IG.Gr3d.VtkSurfacePlotBase.PointColor, IG.Gr3d.VtkSurfacePlotBase.PointSize, IG.Gr3d.VtkSurfacePlotBase.PointsVisible, IG.Gr3d.VtkPlotBase.RemoveActors(), IG.Gr3d.VtkPlotter.ResetCamera(), IG.Gr3d.VtkSurfacePlot.SetBoundsParameters(), IG.Gr3d.VtkSurfacePlot.SetSurfaceDefinition(), IG.Gr3d.VtkPlotBase.ShowPlot(), IG.Gr3d.VtkSurfacePlotBase.SurfaceColor, IG.Gr3d.VtkSurfacePlotBase.SurfaceColorIsScaled, IG.Gr3d.VtkSurfacePlotBase.SurfaceColorOpacity, and IG.Num.IFunc2d.Value().

Referenced by IG.Script.ScriptGraphics3DBase.Plot3dFunctionSurfacePlot().

static void IG.Gr3d.VtkPlotBase.ExampleSurfacePlotScaled | ( |  | ) |
| inline static

Example of surface plots where graph is scaled automaticallly.

Referenced by IG.Script.ScriptGraphics3DBase.Plot3dFunctionSurfacePlotScaled().

static void IG.Gr3d.VtkPlotBase.ExampleSurfacePlotScaled | ( | int | numX,
|  | int | numY
| ) |  |
| inline static

Example of surface plots where graph is scaled automatically.

Parameters

  numX | Number of plotting points in x direction.
  numY | Number of plotting points in Y direction.

References IG.Gr3d.VtkSurfacePlot.ClearSurfaceDefinition(), IG.Num.StructuredMeshGeometry2d< TCoord >.Coordinates, IG.Gr3d.VtkSurfacePlot.Create(), IG.Num.StructuredField2d< TElement >.Dim1, IG.Gr3d.VtkPlotter.IsScaled, IG.Num.BoundingBoxBase.Max, IG.Gr3d.VtkSurfacePlot.Mesh, IG.Num.BoundingBoxBase.Min, IG.Gr3d.VtkSurfacePlot.NumX, IG.Gr3d.VtkSurfacePlot.NumY, IG.Gr3d.VtkPlotBase.OutputLevel, IG.Gr3d.VtkSurfacePlotBase.PointsVisible, IG.Gr3d.VtkPlotter.ResetCamera(), IG.Gr3d.VtkPlotter.SetBoundsScaled(), IG.Gr3d.VtkPlotBase.ShowPlot(), IG.Gr3d.VtkSurfacePlotBase.SurfaceColor, IG.Gr3d.VtkSurfacePlotBase.SurfaceColorIsScaled, IG.Gr3d.VtkSurfacePlotBase.SurfaceColorOpacity, IG.Num.BoundingBox3d.Update(), and IG.Num.Func2dBase.Value().

static void IG.Gr3d.VtkPlotBase.ExampleSurfacePlotManualScaled | ( |  | ) |
| inline static

Example of surface plots where mesh is generated manually. Also shows scaling of graph.

Referenced by IG.Script.ScriptGraphics3DBase.Plot3dFunctionSurfacePlotManualScaled().

static void IG.Gr3d.VtkPlotBase.ExampleSurfacePlotManualScaled | ( | int | numX,
|  | int | numY
| ) |  |
| inline static

Example of surface plots where mesh is generated manually. Also shows scaling of graph.

Parameters

  numX | Number of plotting points in x direction.
  numY | Number of plotting points in Y direction.

References IG.Gr3d.VtkSurfacePlot.ClearSurfaceDefinition(), IG.Num.StructuredMeshGeometry2d< TCoord >.Coordinates, IG.Gr3d.VtkSurfacePlot.Create(), IG.Num.StructuredField2d< TElement >.Dim1, IG.Num.Field< TElement >.Length, IG.Num.BoundingBoxBase.Map(), IG.Num.BoundingBoxBase.Max, IG.Gr3d.VtkSurfacePlot.Mesh, IG.Num.BoundingBoxBase.Min, IG.Gr3d.VtkSurfacePlot.NumX, IG.Gr3d.VtkSurfacePlot.NumY, IG.Gr3d.VtkPlotBase.OutputLevel, IG.Gr3d.VtkSurfacePlotBase.PointsVisible, IG.Gr3d.VtkPlotter.ResetCamera(), IG.Gr3d.VtkPlotBase.ShowPlot(), IG.Gr3d.VtkSurfacePlotBase.SurfaceColor, IG.Gr3d.VtkSurfacePlotBase.SurfaceColorIsScaled, IG.Gr3d.VtkSurfacePlotBase.SurfaceColorOpacity, IG.Num.BoundingBoxBase.ToString(), IG.Num.BoundingBox3d.Update(), IG.Num.Func2dBase.Value(), and IG.Num.Vector3d.Vec.

static void IG.Gr3d.VtkPlotBase.ExampleContourPlot | ( |  | ) |
| inline static

Examples of contour plots.

References IG.Gr3d.VtkSurfacePlot.Create(), IG.Gr3d.VtkPlotBase.CreateAndShow(), IG.Gr3d.VtkSurfacePlotBase.LineColorIsScaled, IG.Gr3d.VtkSurfacePlotBase.LinesVisible, IG.Gr3d.VtkSurfacePlotBase.LineWidth, IG.Gr3d.VtkContourPlot.NumContours, IG.Gr3d.VtkSurfacePlot.NumX, IG.Gr3d.VtkSurfacePlot.NumY, IG.Gr3d.VtkPlotBase.OutputLevel, IG.Gr3d.VtkSurfacePlotBase.PointSize, IG.Gr3d.VtkSurfacePlotBase.PointsVisible, IG.Gr3d.VtkSurfacePlot.SetBoundsParameters(), IG.Gr3d.VtkSurfacePlot.SetSurfaceDefinition(), IG.Gr3d.VtkSurfacePlotBase.SurfaceColor, IG.Gr3d.VtkSurfacePlotBase.SurfaceColorIsScaled, IG.Gr3d.VtkSurfacePlotBase.SurfaceColorOpacity, and IG.Gr3d.VtkSurfacePlotBase.SurfacesVisible.

Referenced by IG.Script.ScriptGraphics3DBase.Plot3dFunctionContourPlot().

static void IG.Gr3d.VtkPlotBase.CopyBounds | ( | Func3d2dExamples.ParametricSurface | func,
|  | VtkSurfacePlot | plot
| ) |  |
| inline static

Copies bounds on parameters from the function definition of parametric surface to a plot object for plotting surfaces.

References IG.Gr3d.VtkSurfacePlot.NumX, IG.Gr3d.VtkSurfacePlot.NumY, and IG.Gr3d.VtkSurfacePlot.SetBoundsParameters().

Referenced by IG.Script.ScriptGraphics3DBase.SurfaceFunctionKleinBottle(), IG.Script.ScriptGraphics3DBase.SurfaceFunctionSnailShell(), and IG.Script.ScriptGraphics3DBase.SurfaceFunctionTwoToruses().

static void IG.Gr3d.VtkPlotBase.ExampleParametricSurfacePlots | ( |  | ) |
| inline static

Examples of various parametric surface plots.

References IG.Gr3d.VtkPlotBase.CreateAndShow(), IG.Gr3d.VtkSurfacePlotBase.LineColor, IG.Gr3d.VtkSurfacePlotBase.LineColorIsScaled, IG.Gr3d.VtkSurfacePlotBase.LineWidth, IG.Gr3d.VtkSurfacePlot.NumX, IG.Gr3d.VtkSurfacePlot.NumY, IG.Gr3d.VtkPlotBase.OutputLevel, IG.Gr3d.VtkSurfacePlotBase.PointSize, IG.Gr3d.VtkSurfacePlotBase.PointsVisible, IG.Gr3d.VtkPlotBase.RemoveActors(), IG.Gr3d.VtkSurfacePlot.SetBoundsParameters(), IG.Gr3d.VtkSurfacePlot.SetSurfaceDefinition(), IG.Gr3d.VtkSurfacePlotBase.SurfaceColor, IG.Gr3d.VtkSurfacePlotBase.SurfaceColorIsScaled, and IG.Gr3d.VtkSurfacePlotBase.SurfaceColorOpacity.

## Member Data Documentation

object IG.Gr3d.VtkPlotBase._mainLock = new object()
| private

int IG.Gr3d.VtkPlotBase._outputLevel = VtkPlotter.DefaultOutputLevel
| private

StopWatch1 IG.Gr3d.VtkPlotBase._timer
| private

VtkPlotter IG.Gr3d.VtkPlotBase._plotter
| private

List<vtkActor> IG.Gr3d.VtkPlotBase._actors
| protected

List<vtkAlgorithm> IG.Gr3d.VtkPlotBase._algorithms
| protected

List<vtkMapper> IG.Gr3d.VtkPlotBase._mappers
| protected

List<vtkDataSet> IG.Gr3d.VtkPlotBase._dataSets
| protected

bool IG.Gr3d.VtkPlotBase._autoUpdateBoundsCoordinates = true
| protected

BoundingBox3d IG.Gr3d.VtkPlotBase._boundsCoordinates
| private

bool IG.Gr3d.VtkPlotBase.disposed = false
| private

IFunc2d IG.Gr3d.VtkPlotBase.func1 = new ExampleFunc2dShifted(new ExampleFunc2dSquare(), 0.5)
| static private

First uxiliary function used in examples.

IFunc2d IG.Gr3d.VtkPlotBase.func2 = new ExampleFunc2dXY()
| static private

Second uxiliary function used in examples.

## Property Documentation

object IG.Gr3d.VtkPlotBase.Lock
| get

This object's central lock object to be used by other object. Do not use this object for locking in class' methods, for this you should use InternalLock.

int IG.Gr3d.VtkPlotBase.OutputLevel
| get set

Level of output to the console for the current object. The defalult output level for newly created object is specified by VtkPlotter.DefaultOutputLevel.

Referenced by IG.Gr3d.VtkPlotter.ExampleAddTestGraph(), IG.Gr3d.VtkPlotBase.ExampleContourPlot(), IG.Gr3d.VtkPlotBase.ExampleCurvePlotLissajous(), IG.Gr3d.VtkPlotBase.ExampleCurvePlotTorusKnot(), IG.Gr3d.VtkPlotBase.ExampleCustomSurfaceComparison(), IG.Gr3d.VtkControlBase.ExampleExternalLoadVtkGraphics_SurfacePlots(), IG.Gr3d.VtkPlotBase.ExampleParametricSurfacePlots(), IG.Gr3d.VtkPlotBase.ExamplePlotterDecoration(), IG.Gr3d.VtkPlotBase.ExampleSurfacePlot(), IG.Gr3d.VtkPlotBase.ExampleSurfacePlotManualScaled(), IG.Gr3d.VtkPlotBase.ExampleSurfacePlotScaled(), IG.Gr3d.VtkFormsExamples.Plot3dFunctionVtkControl(), IG.Forms.VectorFunctionPlotter2d.PlotParametricTest(), IG.Script.ScriptGraphics3DBase.SetDefaultPlotProperties(), and IG.Gr3d.VtkControlBase.VtkControlBase_LoadVtkGraphics().

StopWatch1 IG.Gr3d.VtkPlotBase.Timer
| get

Stopwatch that can be used to measure the time efficiency of actions.

color IG.Gr3d.VtkPlotBase.BackGround
| get set

Sets background color of the plotter that is used by the current plot object.

Task is delegated to the plotter.

VtkPlotter IG.Gr3d.VtkPlotBase.Plotter
| get set

VTK plotter that is used for rendering graphics produeced by the current plotting class, on a VTK rendering window.

Getter is not thread safe (for better efficiency).

List<vtkActor> IG.Gr3d.VtkPlotBase.Actors
| get set protected

List of actors contained on the current class.

Setter is thread safe.

Lazy evaluation - list object is automatically generated when first accessed.

List<vtkAlgorithm> IG.Gr3d.VtkPlotBase.algorithms
| get set protected

List of algorithms contained on the current class.

Setter is thread safe.

Lazy evaluation - list object is automatically generated when first accessed.

List<vtkMapper> IG.Gr3d.VtkPlotBase.Mappers
| get set protected

List of mappers contained on the current class.

Setter is thread safe.

Lazy evaluation - list object is automatically generated when first accessed.

List<vtkDataSet> IG.Gr3d.VtkPlotBase.DataSets
| get set protected

List of datasets contained on the current class.

Setter is thread safe.

Lazy evaluation - list object is automatically generated when first accessed.

bool IG.Gr3d.VtkPlotBase.AutoUpdateBoundsCoordinates
| get set

Determines whether bounds on plotted geometry are automatically updated when new primitives are added.

BoundingBox3d IG.Gr3d.VtkPlotBase.BoundsCoordinates
| get protected set

Bounds on coordinates of points that define the plots. everything on the plot should fit in these bounds.

Referenced by IG.Gr3d.VtkPlotter.CalculateBoundsFromPlotsBounds().

The documentation for this class was generated from the following file:

- extensions/igplot3d/plot3d/vtkbased/VtkPlotBase.cs