SoBoxHighlightRenderAction(3IV)() | SoBoxHighlightRenderAction(3IV)() |
SoBoxHighlightRenderAction — a selection highlight style
SoAction > SoGLRenderAction > SoBoxHighlightRenderAction
#include <Inventor/actions/SoBoxHighlightRenderAction.h>
Methods from class SoBoxHighlightRenderAction:
SoBoxHighlightRenderAction()
virtual void apply(SoNode *node)
void setVisible(SbBool b)
SbBool isVisible() const
void setColor(const SbColor &c)
SbColor & getColor()
void setLinePattern(unsigned short pattern)
unsigned short getLinePattern()
void setLineWidth(float width)
float getLineWidth()
Methods from class SoGLRenderAction:
void setViewportRegion(const SbViewportRegion
&newRegion)
const SbViewportRegion & getViewportRegion()
const
void setUpdateArea(const SbVec2f &origin, const
SbVec2f &size)
void getUpdateArea(SbVec2f &origin, SbVec2f
&size) const
void setAbortCallback(SoGLRenderAbortCB *func, void
*userData)
void setTransparencyType(TransparencyType type)
TransparencyType getTransparencyType() const
void setSmoothing(SbBool smooth)
SbBool isSmoothing() const
void setNumPasses(int num)
int getNumPasses() const
void setPassUpdate(SbBool flag)
SbBool isPassUpdate() const
void setPassCallback(SoGLRenderPassCB *func, void
*userData)
void setCacheContext(uint32_t context)
uint32_t getCacheContext() const
Methods from class SoAction:
static SoType getClassTypeId()
virtual SoType getTypeId()
virtual SbBool isOfType(SoType type)
virtual void invalidateState()
SoBoxHighlightRenderAction is a render action which renders the specified scene graph, then renders wireframe boxes surrounding each selected object. Selected objects are specified by the first SoSelection node in the scene to which this action is applied. If an SoGetBoundingBoxAction applied to a selected object produces an empty bounding box, no highlight is rendered for that object. A highlight render action can be passed to the setGLRenderAction() method of SoXtRenderArea to have an effect on scene graphs.
SoBoxHighlightRenderAction()
Constructor.
virtual void apply(SoNode *node)
This renders the passed scene graph, and also renders wireframe boxes around
selected objects as specified by the first SoSelection node found in
the scene graph.
void setVisible(SbBool b)
This provides a convenient mechansim for turning highlights off or on. When
FALSE is passed, subsequent calls to apply() render the scene
graph without rendering highlights. The application is responsible for
forcing a redraw of the scene after changing this state. The default
visibility is on.
SbBool isVisible() const
Returns whether highlights will be rendered or not.
void setColor(const SbColor &c)
SbColor & getColor()
Set and get the color of the highlight. Default is red (1,0,0).
Application is responsible for forcing a redraw of the scene to see the
effects of this change.
void setLinePattern(unsigned short pattern)
unsigned short getLinePattern()
Set and get the line pattern of the highlight. Default is solid,
0xffff. The pattern of bits in the passed variable specifies the
pattern of the line. See SoDrawStyle for a description. Application
is responsible for forcing a redraw of the scene to see the effects of this
change.
void setLineWidth(float width)
float getLineWidth()
Set and get the line width of the highlight. Default is 3. Application
is responsible for forcing a redraw of the scene to see the effects of this
change.
Here is an example of how a box highlight can be specified for a particular selection node and render area.
SoXtRenderArea *myRenderArea;
SoSelection *mySelection;
// Set the highlight render action
myRenderArea->setGLRenderAction(
new SoBoxHighlightRenderAction());
// Automatic redraw on selection changes
myRenderArea->redrawOnSelectionChange(mySelection);
SoLineHighlightRenderAction, SoGLRenderAction, SoSelection, SoXtRenderArea, SoDrawStyle, SoInteraction