IGLib  1.7.2
The IGLib base library for development of numerical, technical and business applications.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros
IG.Gr3d.VtkPlotBase Class Referenceabstract

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

+ Inheritance diagram for IG.Gr3d.VtkPlotBase:
+ Collaboration diagram for IG.Gr3d.VtkPlotBase:

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 ( )
inlineprivate

Prevent calling argument-less constructor in derived classes.

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

Constructor.

Parameters
plotterVTK plotter that is used for rendering graphics produeced by the current plotting class.

References IG.Gr3d.VtkPlotter.AddPlotObject().

IG.Gr3d.VtkPlotBase.~VtkPlotBase ( )
inlineprivate

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
actorActor 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
actorVTK 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
actorsObjects 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
plotterPlotter 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
actorVTK 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
actorsObjects 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
boundsBounds 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
algorithmobject 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
algorithmVTK 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
algorithmsObjects 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
algorithmVTK 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
algorithmsObjects 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
mapperMapper 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
mapperVTK 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
mappersObjects 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
mapperVTK 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
mappersObjects 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
datasetdataset 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
datasetVTK 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
datasetsObjects 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
datasetVTK 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
datasetsObjects 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
forcedFlag for forced update. If true then update is performed even if the auto updating flg (AutoUpdateBoundsCoordinates) is false.
xX coordinate of the point to fit within the bounding box.
yY coordinate of the point to fit within the bounding box.
zZ 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
xX coordinate of the point to fit within the bounding box.
yY coordinate of the point to fit within the bounding box.
zZ 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
forcedFlag for forced update. If true then update is performed even if the auto updating flg (AutoUpdateBoundsCoordinates) is false.
pointCoordinatesCoordinates 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
pointCoordinatesCoordinates 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 ( )
inlinevirtual
void IG.Gr3d.VtkPlotBase.Dispose ( )
inline

Implementation of IDisposable interface.

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

virtual void IG.Gr3d.VtkPlotBase.Dispose ( bool  disposing)
inlineprotectedvirtual

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
disposingTells whether the method has been called form Dispose() method.
static void IG.Gr3d.VtkPlotBase.ExampleCurvePlotLissajous ( )
inlinestatic

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 
)
inlinestatic

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
aFirst parameter of the plotted Lissajous curve.
bSecond 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 ( )
inlinestatic

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 
)
inlinestatic
static void IG.Gr3d.VtkPlotBase.ExampleSurfacePlotScaled ( )
inlinestatic

Example of surface plots where graph is scaled automaticallly.

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

static void IG.Gr3d.VtkPlotBase.ExampleSurfacePlotManualScaled ( )
inlinestatic

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.CopyBounds ( Func3d2dExamples.ParametricSurface  func,
VtkSurfacePlot  plot 
)
inlinestatic

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)
staticprivate

First uxiliary function used in examples.

IFunc2d IG.Gr3d.VtkPlotBase.func2 = new ExampleFunc2dXY()
staticprivate

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.

StopWatch1 IG.Gr3d.VtkPlotBase.Timer
get

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

color IG.Gr3d.VtkPlotBase.BackGround
getset

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
getset

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
getsetprotected

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
getsetprotected

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
getsetprotected

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
getsetprotected

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
getset

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

BoundingBox3d IG.Gr3d.VtkPlotBase.BoundsCoordinates
getprotected 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: