public class SoLOD extends SoGroup
More precisely, if the distance from the world-space eyepoint to the transformed center is D and the ranges array contains LAST_RANGE+1 values (numbered 0...LAST_RANGE), then:
Thus, N ranges and N+1 children should be specified. If you specify too few children, the last child will be used for the extra ranges. If you specify too few ranges, the extra children will never be used.if D < ranges[0] : Child 0 is drawn else if ranges[i-1] < D < ranges[i] : Child i is drawn else if D > ranges[LAST_RANGE] : Child LAST_RANGE+1 is drawn
It is often useful to define the lowest detail child to be an SoInfo
node. This causes the object to completely disappear if it is far enough away from the eyepoint. Defining the highest detail child to be an SoInfo
node can also be useful if you want the object to disappear if it gets too close to the eyepoint.
File format/default:
LOD {
center | 0 0 0 |
range | [ ] |
Action behavior:
SoGLRenderAction
, SoRayPickAction
, SoCallbackAction
Only the child with the appropriate level of detail is traversed.
Other actions
All implemented as for SoGroup
.
See also:
SoNode.RenderModes
Inventor.ConstructorCommand
Modifier and Type | Field and Description |
---|---|
SoSFVec3f |
center
Object-space center of the model.
|
SoMFFloat |
range
World-space distances to use as switching criteria.
|
boundingBoxIgnoring
VERBOSE_LEVEL, ZeroHandle
Constructor and Description |
---|
SoLOD()
Creates a distance-based level-of-detail node with default settings.
|
SoLOD(int nChildren)
Constructor that takes approximate number of children.
|
addChild, findChild, getChild, getNumChildren, insertChild, removeAllChildren, removeChild, removeChild, replaceChild, replaceChild
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
copyFieldValues, copyFieldValues, enableNotify, fieldsAreEqual, get, getAllFields, getEventIn, getEventOut, getField, getFieldName, hasDefaultValues, isNotifyEnabled, set, setToDefaults
dispose, getName, isDisposable, isSynchronizable, setName, setSynchronizable
getNativeResourceHandle
Generated on July 31, 2019, Copyright © Thermo Fisher Scientific. All rights reserved. http://www.openinventor.com