Class SliceScaleBar
- java.lang.Object
- 
- All Implemented Interfaces:
- SafeDisposable
 
 public class SliceScaleBar extends SoAnnotation (Preview Feature) Shape node to display a dynamic scale bar in window coordinates.Preview Feature means this class is fully supported and can be used in Open Inventor applications. Being tagged as a Preview Feature just means that the implementation is still subject to API changes and adjustments based on feedback from early adopters. Please be also aware that source compatibility might be broken regardless of the Open Inventor compatibility changes policy due to our commitment to bring needed changes to be sure the specifications of this Preview Feature match the expectations of our customers. This class displays a 2D scale bar. The positionof the scale bar is specified in normalized screen coordinates (-1 to 1). By default, thelengthof the scale bar is a fixed distance in normalized screen coordinates. However if thetrackedCamerafield is set, thenlengthis a distance in 3D world coordinates and the the size of the scale bar on screen is computed based on that distance. For example, if the application is viewing DICOM data measured in millimeters (mm), then settinglengthto 100 displays a scale bar that shows the distance 10 cm on screen. The scale bar size will change if the camera is zoomed in or out (camera height field changes).The distance computation is based on "horizontal" or "vertical" relative to the camera, so the scale bar adjusts automatically if the camera is rotated to view a different volume axis, e.g. Coronal vs Axial. This class is not intended to replace the MeshViz axis classes for general 2D data plotting. This class has only been tested with SoOrthoSlice and an SoOrthographicCamera (the usual case for medical image viewing). File format/default: SliceScaleBar { position 0 0 0 length 1 numTickIntervals 0 trackedCamera NULL orientation HORIZONTAL alignment CENTER" label "" 
- 
- 
Nested Class SummaryNested Classes Modifier and Type Class Description static classSliceScaleBar.AlignmentScale bar alignmentstatic classSliceScaleBar.OrientationScale bar orientation- 
Nested classes/interfaces inherited from class com.openinventor.inventor.nodes.SoSeparatorSoSeparator.Cachings, SoSeparator.FastEditings, SoSeparator.RenderUnitIds
 - 
Nested classes/interfaces inherited from class com.openinventor.inventor.nodes.SoNodeSoNode.RenderModes
 - 
Nested classes/interfaces inherited from class com.openinventor.inventor.InventorInventor.ConstructorCommand
 
- 
 - 
Field SummaryFields Modifier and Type Field Description SoSFEnum<SliceScaleBar.Alignment>alignmentScale bar alignment (default is CENTER).SoSFStringlabelLabel (default is empty string).SoSFFloatlengthLength in normalized screen coordinates (-1 to 1) if not tracking, else length in 3D world coordinates.SoSFInt32numTickIntervalsNumber of tick intervals (default is 0).SoSFEnum<SliceScaleBar.Orientation>orientationScale bar orientation (default is HORIZONTAL).SoSFVec2fpositionPosition in normalized screen coordinates (-1 to 1).SoSFNodetrackedCameraTracked camera (default is null).- 
Fields inherited from class com.openinventor.inventor.nodes.SoSeparatorboundingBoxCaching, fastEditing, pickCulling, renderCaching, renderCulling, renderUnitId
 - 
Fields inherited from class com.openinventor.inventor.nodes.SoGroupboundingBoxIgnoring
 - 
Fields inherited from class com.openinventor.inventor.InventorVERBOSE_LEVEL, ZeroHandle
 
- 
 - 
Constructor SummaryConstructors Constructor Description SliceScaleBar()Constructor
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description SoNode.RenderModesgetRenderEngineMode()Returns the supported Render engine mode.- 
Methods inherited from class com.openinventor.inventor.nodes.SoGroupaddChild, findChild, getChild, getNumChildren, insertChild, removeAllChildren, removeChild, removeChild, replaceChild, replaceChild
 - 
Methods inherited from class com.openinventor.inventor.nodes.SoNodeaffectsState, callback, copy, copy, distribute, doAction, getAlternateRep, getBoundingBox, getByName, getMatrix, getPrimitiveCount, getRenderUnitID, GLRender, GLRenderBelowPath, GLRenderInPath, GLRenderOffPath, grabEventsCleanup, grabEventsSetup, handleEvent, isBoundingBoxIgnoring, isOverride, pick, rayPick, search, setOverride, touch, write
 - 
Methods inherited from class com.openinventor.inventor.fields.SoFieldContainercopyFieldValues, copyFieldValues, enableNotify, fieldsAreEqual, get, getAllFields, getEventIn, getEventOut, getField, getFieldName, hasDefaultValues, isNotifyEnabled, set, setToDefaults
 - 
Methods inherited from class com.openinventor.inventor.misc.SoBasedispose, getName, isDisposable, isSynchronizable, setName, setSynchronizable
 - 
Methods inherited from class com.openinventor.inventor.InventorgetNativeResourceHandle
 
- 
 
- 
- 
- 
Field Detail- 
positionpublic SoSFVec2f position Position in normalized screen coordinates (-1 to 1). Default is (0,0,0).
 - 
labelpublic SoSFString label Label (default is empty string).
 - 
lengthpublic SoSFFloat length Length in normalized screen coordinates (-1 to 1) if not tracking, else length in 3D world coordinates. Default is 1.For example, if the application is viewing DICOM data measured in millimeters (mm), then setting length to 100 displays a 10 cm scale bar on screen. 
 - 
numTickIntervalspublic SoSFInt32 numTickIntervals Number of tick intervals (default is 0). If numTickIntervals is 0, no tick marks are drawn. For example, if the length is set to 100 mm, then set numTickIntervals to 10 to get a tick mark every 10 mm (1 cm).
 - 
trackedCamerapublic SoSFNode trackedCamera Tracked camera (default is null). This should be the camera that is viewing the tracked scene. It will be used to determine the length of the axis in NDC based on the specified length in 3D world coordinates.
 - 
orientationpublic SoSFEnum<SliceScaleBar.Orientation> orientation Scale bar orientation (default is HORIZONTAL).
 - 
alignmentpublic SoSFEnum<SliceScaleBar.Alignment> alignment Scale bar alignment (default is CENTER).
 
- 
 - 
Method Detail- 
getRenderEngineModepublic SoNode.RenderModes getRenderEngineMode() Description copied from class:SoNodeReturns the supported Render engine mode.For custom node, this method returns by default SoNode.RenderModes.OIV_UNKNOWN_RENDERING_MODE, override this method to specify the Render engine mode supported by your custom node.- Overrides:
- getRenderEngineModein class- SoNode
- Returns:
- the supported Render engine mode for this node.
 
 
- 
 
-