1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96
|
Usage
vtkImplicitSelectionLoop computes the implicit function
value and function gradient for a irregular, cylinder-like
object whose cross section is defined by a set of points
forming a loop. The loop need not be convex nor its points
coplanar. However, the loop must be non-self-intersecting
when projected onto the plane defined by the accumulated
cross product around the loop (i.e., the axis of the loop).
(Alternatively, you can specify the normal to use.)
The following procedure is used to compute the implicit
function value for a point x. Each point of the loop is
first projected onto the plane defined by the loop normal.
This forms a polygon. Then, to evaluate the implicit
function value, inside/outside tests are used to determine
if x is inside the polygon, and the distance to the loop
boundary is computed (negative values are inside the loop).
One example application of this implicit function class is
to draw a loop on the surface of a mesh, and use the loop to
clip or extract cells from within the loop. Remember, the
selection loop is "infinite" in length, you can use a plane
(in boolean combination) to cap the extent of the selection
loop. Another trick is to use a connectivity filter to
extract the closest region to a given point (i.e., one of
the points used to define the selection loop).
To create an instance of class vtkImplicitSelectionLoop,
simply invoke its constructor as follows
obj = vtkImplicitSelectionLoop
Methods
The class vtkImplicitSelectionLoop has several methods that
can be used. They are listed below. Note that the
documentation is translated automatically from the VTK
sources, and may not be completely intelligible. When in
doubt, consult the VTK website. In the methods listed below,
obj is an instance of the vtkImplicitSelectionLoop class.
* string = obj.GetClassName () - Standard VTK methods for
printing and type information.
* int = obj.IsA (string name) - Standard VTK methods for
printing and type information.
* vtkImplicitSelectionLoop = obj.NewInstance () - Standard
VTK methods for printing and type information.
* vtkImplicitSelectionLoop = obj.SafeDownCast (vtkObject o)
- Standard VTK methods for printing and type information.
* double = obj.EvaluateFunction (double x[3]) - Evaluate
selection loop returning a signed distance.
* double = obj.EvaluateFunction (double x, double y, double
z) - Evaluate selection loop returning a signed distance.
* obj.EvaluateGradient (double x[3], double n[3]) - Evaluate
selection loop returning the gradient.
* obj.SetLoop (vtkPoints ) - Set/Get the array of point
coordinates defining the loop. There must be at least
three points used to define a loop.
* vtkPoints = obj.GetLoop () - Set/Get the array of point
coordinates defining the loop. There must be at least
three points used to define a loop.
* obj.SetAutomaticNormalGeneration (int ) - Turn on/off
automatic normal generation. By default, the normal is
computed from the accumulated cross product of the edges.
You can also specify the normal to use.
* int = obj.GetAutomaticNormalGeneration () - Turn on/off
automatic normal generation. By default, the normal is
computed from the accumulated cross product of the edges.
You can also specify the normal to use.
* obj.AutomaticNormalGenerationOn () - Turn on/off automatic
normal generation. By default, the normal is computed from
the accumulated cross product of the edges. You can also
specify the normal to use.
* obj.AutomaticNormalGenerationOff () - Turn on/off
automatic normal generation. By default, the normal is
computed from the accumulated cross product of the edges.
You can also specify the normal to use.
* obj.SetNormal (double , double , double ) - Set / get the
normal used to determine whether a point is inside or
outside the selection loop.
* obj.SetNormal (double a[3]) - Set / get the normal used to
determine whether a point is inside or outside the
selection loop.
* double = obj. GetNormal () - Set / get the normal used to
determine whether a point is inside or outside the
selection loop.
* long = obj.GetMTime () - Overload GetMTime() because we
depend on the Loop
* FreeMat_Documentation
* Visualization_Toolkit_Filtering_Classes
* Generated on Thu Jul 25 2013 17:18:30 for FreeMat by
doxygen_ 1.8.1.1
|