Class MoCellFilter
- java.lang.Object
-
- com.openinventor.inventor.Inventor
-
- com.openinventor.inventor.misc.SoBase
-
- com.openinventor.inventor.fields.SoFieldContainer
-
- com.openinventor.inventor.nodes.SoNode
-
- com.openinventor.meshvizxlm.mapping.nodes.MoActionNode
-
- com.openinventor.meshvizxlm.mapping.nodes.MoCellFilter
-
- All Implemented Interfaces:
SafeDisposable
public class MoCellFilter extends MoActionNode
Property node that defines a cell filter.Filtering cells is a way to specify which cells are used and which cells are ignored during a mesh extraction.
The application must create a class implementing theMiCellFilter
interface. A cell filter class must implement the methodacceptCell()
with either 1, 2 or 3 indices as arguments. When the methodacceptCell()
returnsfalse
, the cell identified by these indices is not taken into account by the extraction. It is as if the mesh does not contain this cell.Note: Each time the current
MiCellFilter
is updated,touch()
must be called to mark the node has modified. HoweverMiCellFilter.getTimeStamp()
must return a different value than before to actually trigger a new rendering.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class com.openinventor.inventor.nodes.SoNode
SoNode.RenderModes
-
Nested classes/interfaces inherited from class com.openinventor.inventor.Inventor
Inventor.ConstructorCommand
-
-
Field Summary
-
Fields inherited from class com.openinventor.inventor.Inventor
VERBOSE_LEVEL, ZeroHandle
-
-
Constructor Summary
Constructors Constructor Description MoCellFilter()
Constructs a property node with no cell filter defined.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
doAction(SoAction action)
MiCellFilter
getCellFilter()
Returns the cell filter interface defined for this node.void
reset()
Reset the cell filter interface tonull
(same as callingsetCellFilter(null)
).void
setCellFilter(MiCellFilterI cellFilterI)
Sets the cell filter for unstructured meshes.void
setCellFilter(MiCellFilterIj cellFilterIj)
Sets the cell filter for structured surface meshes.void
setCellFilter(MiCellFilterIjk cellFilterIjk)
Sets the cell filter for structured volume meshes.-
Methods inherited from class com.openinventor.meshvizxlm.mapping.nodes.MoActionNode
callback, distribute, getBoundingBox, getMatrix, getPrimitiveCount, getRenderEngineMode, GLRender, handleEvent, pick, rayPick
-
Methods inherited from class com.openinventor.inventor.nodes.SoNode
affectsState, copy, copy, getAlternateRep, getByName, getRenderUnitID, GLRenderBelowPath, GLRenderInPath, GLRenderOffPath, grabEventsCleanup, grabEventsSetup, isBoundingBoxIgnoring, isOverride, search, setOverride, touch, write
-
Methods inherited from class com.openinventor.inventor.fields.SoFieldContainer
copyFieldValues, copyFieldValues, enableNotify, fieldsAreEqual, get, getAllFields, getEventIn, getEventOut, getField, getFieldName, hasDefaultValues, isNotifyEnabled, set, setToDefaults
-
Methods inherited from class com.openinventor.inventor.misc.SoBase
dispose, getName, isDisposable, isSynchronizable, setName, setSynchronizable
-
Methods inherited from class com.openinventor.inventor.Inventor
getNativeResourceHandle
-
-
-
-
Method Detail
-
setCellFilter
public void setCellFilter(MiCellFilterI cellFilterI)
Sets the cell filter for unstructured meshes. This node is also marked as modified by callingtouch()
.
Note: When setting a new filter, theMiCellFilter.getTimeStamp()
must return a different value than previously to actually take into account the change of filter.- Parameters:
cellFilterI
- the cell filter to set
-
setCellFilter
public void setCellFilter(MiCellFilterIj cellFilterIj)
Sets the cell filter for structured surface meshes. This node is also marked as modified by callingtouch()
.
Note: When setting a new filter, theMiCellFilter.getTimeStamp()
must return a different value than previously to actually take into account the change of filter.- Parameters:
cellFilterIj
- the cell filter to set
-
setCellFilter
public void setCellFilter(MiCellFilterIjk cellFilterIjk)
Sets the cell filter for structured volume meshes. This node is also marked as modified by callingtouch()
.
Note: When setting a new filter, theMiCellFilter.getTimeStamp()
must return a different value than previously to actually take into account the change of filter.- Parameters:
cellFilterIjk
- the cell filter to set
-
reset
public void reset()
Reset the cell filter interface tonull
(same as callingsetCellFilter(null)
). This node is also marked as modified by callingtouch()
.
-
getCellFilter
public MiCellFilter getCellFilter()
Returns the cell filter interface defined for this node.- Returns:
- the cell filter interface
-
-