Package com.openinventor.inventor.nodes
Class SoNurbsGroup
- java.lang.Object
-
- All Implemented Interfaces:
SafeDisposable
public class SoNurbsGroup extends SoGroup
Group that encapsulates NURBS surfaces to be joined. This node allows you to join multiple NURBS surfaces without cracks between them. Surfaces which need to be joined must have profiles (SoNurbsProfile
) that share the same boundary (SoNurbsBoundary
).In order to work, profiles must have an equivalent parameterization. Evaluating two profiles with a shared boundary at the same t will give two (u,v) pairs: (u1,v1) and (u2,v2). Then, evaluating (u1,v1) on the first NURBS surface will give a point P1 and (u2,v2) will give a point P2 on the second surface. If P1 and P2 are equal (within a tolerance) then the two profiles have an equivalent parameterization.
The picture below is a scene graph with joined surfaces:
In this scene, the following surfaces will be joined:
- NS0 and NS1 with boundary NB0
- NS1 and NS2 with boundary NB1
- NS0 and NS2 with boundary NB2
File format/default:
NurbsGroup {
Action behavior:
SoGLRenderAction
,SoCallbackAction
,SoRayPickAction
Traverses each child in order.- See Also:
SoNurbsSurface
,SoNurbsProfile
,SoNurbsBoundary
-
-
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.nodes.SoGroup
boundingBoxIgnoring
-
Fields inherited from class com.openinventor.inventor.Inventor
VERBOSE_LEVEL, ZeroHandle
-
-
Constructor Summary
Constructors Constructor Description SoNurbsGroup()
Creates an empty NurbsGroup node.
-
Method Summary
-
Methods inherited from class com.openinventor.inventor.nodes.SoGroup
addChild, findChild, getChild, getNumChildren, insertChild, removeAllChildren, removeChild, removeChild, replaceChild, replaceChild
-
Methods inherited from class com.openinventor.inventor.nodes.SoNode
affectsState, callback, copy, copy, distribute, doAction, getAlternateRep, getBoundingBox, getByName, getMatrix, getPrimitiveCount, getRenderEngineMode, getRenderUnitID, GLRender, GLRenderBelowPath, GLRenderInPath, GLRenderOffPath, grabEventsCleanup, grabEventsSetup, handleEvent, isBoundingBoxIgnoring, isOverride, pick, rayPick, 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
-
-