vtk
Class vtkSelectPolyData

java.lang.Object
  extended byvtk.vtkObjectBase
      extended byvtk.vtkObject
          extended byvtk.vtkProcessObject
              extended byvtk.vtkSource
                  extended byvtk.vtkPolyDataSource
                      extended byvtk.vtkPolyDataToPolyDataFilter
                          extended byvtk.vtkSelectPolyData
All Implemented Interfaces:
java.io.Serializable

public class vtkSelectPolyData
extends vtkPolyDataToPolyDataFilter
implements java.io.Serializable

vtkSelectPolyData - select portion of polygonal mesh; generate selection scalars. vtkSelectPolyData is a filter that selects polygonal data based on defining a "loop" and indicating the region inside of the loop. The mesh within the loop consists of complete cells (the cells are not cut). Alternatively, this filter can be used to generate scalars. These scalar values, which are a distance measure to the loop, can be used to clip, contour. or extract data (i.e., anything that an implicit function can do). The loop is defined by an array of x-y-z point coordinates. (Coordinates should be in the same coordinate space as the input polygonal data.) The loop can be concave and non-planar, but not self-intersecting. The input to the filter is a polygonal mesh (only surface primitives such as triangle strips and polygons); the output is either a) a portion of the original mesh laying within the selection loop (GenerateSelectionScalarsOff); or b) the same polygonal mesh with the addition of scalar values (GenerateSelectionScalarsOn). The algorithm works as follows. For each point coordinate in the loop, the closest point in the mesh is found. The result is a loop of closest point ids from the mesh. Then, the edges in the mesh connecting the closest points (and laying along the lines forming the loop) are found. A greedy edge tracking procedure is used as follows. At the current point, the mesh edge oriented in the direction of and whose end point is closest to the line is chosen. The edge is followed to the new end point, and the procedure is repeated. This process continues until the entire loop has been created. To determine what portion of the mesh is inside and outside of the loop, three options are possible. 1) the smallest connected region, 2) the largest connected region, and 3) the connected region closest to a user specified point. (Set the ivar SelectionMode.) Once the loop is computed as above, the GenerateSelectionScalars controls the output of the filter. If on, then scalar values are generated based on distance to the loop lines. Otherwise, the cells laying inside the selection loop are output. By default, the mesh lying within the loop is output; however, if InsideOut is on, then the portion of the mesh lying outside of the loop is output. The filter can be configured to generate the unselected portions of the mesh as output by setting GenerateUnselectedOutput. Use the method GetUnselectedOutput to access this output. (Note: this flag is pertinent only when GenerateSelectionScalars is off.) JavaBean wrapper for vtkSelectPolyData object.

Author:
vtk2jbean Automatic JavaBean wrapper for VTK.
See Also:
Serialized Form

Field Summary
protected  java.beans.PropertyChangeSupport changes
           
 
Fields inherited from class vtk.vtkObjectBase
vtkId
 
Constructor Summary
  vtkSelectPolyData()
           
protected vtkSelectPolyData(int dmy)
           
 
Method Summary
 void generateSelectionScalarsOff()
          Set/Get the flag to control behavior of the filter.
 void generateSelectionScalarsOn()
          Set/Get the flag to control behavior of the filter.
 void generateUnselectedOutputOff()
          Control whether a second output is generated.
 void generateUnselectedOutputOn()
          Control whether a second output is generated.
 java.lang.String getClassName()
          Return the class name as a string.
 int getGenerateSelectionScalars()
          Set/Get the flag to control behavior of the filter.
 int getGenerateUnselectedOutput()
          Control whether a second output is generated.
 int getInsideOut()
          Set/Get the InsideOut flag.
 vtkPoints getLoop()
          Set/Get the array of point coordinates defining the loop.
 int getMTime()
          Return this object's modified time.
 vtkPolyData getSelectionEdges()
          Return the (mesh) edges of the selection region.
 int getSelectionMode()
          Control how inside/outside of loop is defined.
 java.lang.String getSelectionModeAsString()
          Control how inside/outside of loop is defined.
 int getSelectionModeMaxValue()
          Control how inside/outside of loop is defined.
 int getSelectionModeMinValue()
          Control how inside/outside of loop is defined.
 vtkSelectPolyData getThisSelectPolyData()
           
 vtkPolyData getUnselectedOutput()
          Return output that hasn't been selected (if GenreateUnselectedOutput is enabled).
 int inRegisterLoop(vtkObject id0)
          Test to see if this object is in a reference counting loop.
 void insideOutOff()
          Set/Get the InsideOut flag.
 void insideOutOn()
          Set/Get the InsideOut flag.
 int isA(java.lang.String id0)
          Return 1 if this class is the same type of (or a subclass of) the named class.
 void setGenerateSelectionScalars(int id0)
          Set/Get the flag to control behavior of the filter.
 void setGenerateUnselectedOutput(int id0)
          Control whether a second output is generated.
 void setInsideOut(int id0)
          Set/Get the InsideOut flag.
 void setLoop(vtkPoints id0)
          Set/Get the array of point coordinates defining the loop.
 void setSelectionMode(int id0)
          Control how inside/outside of loop is defined.
 void setSelectionModeToClosestPointRegion()
          Control how inside/outside of loop is defined.
 void setSelectionModeToLargestRegion()
          Control how inside/outside of loop is defined.
 void setSelectionModeToSmallestRegion()
          Control how inside/outside of loop is defined.
 void unRegister(vtkObjectBase id0)
          Handle the source/data loop.
protected  void VTKCastInit()
           
 void VTKInit()
           
 
Methods inherited from class vtk.vtkPolyDataToPolyDataFilter
getInput, getThisPolyDataToPolyDataFilter, setInput
 
Methods inherited from class vtk.vtkPolyDataSource
getOutput, getOutput, getThisPolyDataSource, setOutput
 
Methods inherited from class vtk.vtkSource
computeInputUpdateExtents, getNumberOfOutputs, getOutputIndex, getReleaseDataFlag, getThisSource, propagateUpdateExtent, releaseDataFlagOff, releaseDataFlagOn, setReleaseDataFlag, triggerAsynchronousUpdate, unRegisterAllOutputs, update, updateData, updateInformation, updateWholeExtent
 
Methods inherited from class vtk.vtkProcessObject
abortExecuteOff, abortExecuteOn, getAbortExecute, getErrorCode, getNumberOfInputs, getProgress, getProgressMaxValue, getProgressMinValue, getProgressText, getThisProcessObject, removeAllInputs, setAbortExecute, setProgress, setProgressText, squeezeInputArray, updateProgress
 
Methods inherited from class vtk.vtkObject
AddObserver, breakOnError, debugOff, debugOn, getDebug, getGlobalWarningDisplay, getThisObject, globalWarningDisplayOff, globalWarningDisplayOn, hasObserver, hasObserver, invokeEvent, invokeEvent, modified, Print, PrintRevisions, register, removeObserver, removeObservers, removeObservers, setDebug, setGlobalWarningDisplay
 
Methods inherited from class vtk.vtkObjectBase
addPropertyChangeListener, finalize, getReferenceCount, getThisObjectBase, isTypeOf, removePropertyChangeListener, setReferenceCount, VTKDelete
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

changes

protected java.beans.PropertyChangeSupport changes
Constructor Detail

vtkSelectPolyData

public vtkSelectPolyData()

vtkSelectPolyData

protected vtkSelectPolyData(int dmy)
Method Detail

getThisSelectPolyData

public vtkSelectPolyData getThisSelectPolyData()

getClassName

public java.lang.String getClassName()
Description copied from class: vtkObjectBase
Return the class name as a string. This method is defined in all subclasses of vtkObjectBase with the vtkTypeRevisionMacro found in vtkSetGet.h.

Overrides:
getClassName in class vtkPolyDataToPolyDataFilter

isA

public int isA(java.lang.String id0)
Description copied from class: vtkObjectBase
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.

Overrides:
isA in class vtkPolyDataToPolyDataFilter

setGenerateSelectionScalars

public void setGenerateSelectionScalars(int id0)
Set/Get the flag to control behavior of the filter. If GenerateSelectionScalars is on, then the output of the filter is the same as the input, except that scalars are generated. If off, the filter outputs the cells laying inside the loop, and does not generate scalars.


getGenerateSelectionScalars

public int getGenerateSelectionScalars()
Set/Get the flag to control behavior of the filter. If GenerateSelectionScalars is on, then the output of the filter is the same as the input, except that scalars are generated. If off, the filter outputs the cells laying inside the loop, and does not generate scalars.


generateSelectionScalarsOn

public void generateSelectionScalarsOn()
Set/Get the flag to control behavior of the filter. If GenerateSelectionScalars is on, then the output of the filter is the same as the input, except that scalars are generated. If off, the filter outputs the cells laying inside the loop, and does not generate scalars.


generateSelectionScalarsOff

public void generateSelectionScalarsOff()
Set/Get the flag to control behavior of the filter. If GenerateSelectionScalars is on, then the output of the filter is the same as the input, except that scalars are generated. If off, the filter outputs the cells laying inside the loop, and does not generate scalars.


setInsideOut

public void setInsideOut(int id0)
Set/Get the InsideOut flag. When off, the mesh within the loop is extracted. When on, the mesh outside the loop is extracted.


getInsideOut

public int getInsideOut()
Set/Get the InsideOut flag. When off, the mesh within the loop is extracted. When on, the mesh outside the loop is extracted.


insideOutOn

public void insideOutOn()
Set/Get the InsideOut flag. When off, the mesh within the loop is extracted. When on, the mesh outside the loop is extracted.


insideOutOff

public void insideOutOff()
Set/Get the InsideOut flag. When off, the mesh within the loop is extracted. When on, the mesh outside the loop is extracted.


setLoop

public void setLoop(vtkPoints id0)
Set/Get the array of point coordinates defining the loop. There must be at least three points used to define a loop.


getLoop

public vtkPoints getLoop()
Set/Get the array of point coordinates defining the loop. There must be at least three points used to define a loop.


setSelectionMode

public void setSelectionMode(int id0)
Control how inside/outside of loop is defined.


getSelectionModeMinValue

public int getSelectionModeMinValue()
Control how inside/outside of loop is defined.


getSelectionModeMaxValue

public int getSelectionModeMaxValue()
Control how inside/outside of loop is defined.


getSelectionMode

public int getSelectionMode()
Control how inside/outside of loop is defined.


setSelectionModeToSmallestRegion

public void setSelectionModeToSmallestRegion()
Control how inside/outside of loop is defined.


setSelectionModeToLargestRegion

public void setSelectionModeToLargestRegion()
Control how inside/outside of loop is defined.


setSelectionModeToClosestPointRegion

public void setSelectionModeToClosestPointRegion()
Control how inside/outside of loop is defined.


getSelectionModeAsString

public java.lang.String getSelectionModeAsString()
Control how inside/outside of loop is defined.


setGenerateUnselectedOutput

public void setGenerateUnselectedOutput(int id0)
Control whether a second output is generated. The second output contains the polygonal data that's not been selected.


getGenerateUnselectedOutput

public int getGenerateUnselectedOutput()
Control whether a second output is generated. The second output contains the polygonal data that's not been selected.


generateUnselectedOutputOn

public void generateUnselectedOutputOn()
Control whether a second output is generated. The second output contains the polygonal data that's not been selected.


generateUnselectedOutputOff

public void generateUnselectedOutputOff()
Control whether a second output is generated. The second output contains the polygonal data that's not been selected.


getUnselectedOutput

public vtkPolyData getUnselectedOutput()
Return output that hasn't been selected (if GenreateUnselectedOutput is enabled).


getSelectionEdges

public vtkPolyData getSelectionEdges()
Return the (mesh) edges of the selection region.


getMTime

public int getMTime()
Description copied from class: vtkObject
Return this object's modified time.

Overrides:
getMTime in class vtkObject

unRegister

public void unRegister(vtkObjectBase id0)
Handle the source/data loop.

Overrides:
unRegister in class vtkSource

inRegisterLoop

public int inRegisterLoop(vtkObject id0)
Test to see if this object is in a reference counting loop.

Overrides:
inRegisterLoop in class vtkSource

VTKInit

public void VTKInit()
Overrides:
VTKInit in class vtkObject

VTKCastInit

protected void VTKCastInit()
Overrides:
VTKCastInit in class vtkPolyDataToPolyDataFilter


Copyright © 2004 Sydney ViSLAB. All Rights Reserved.