Scroll to navigation

SoLineHighlightRenderAction(3IV)() SoLineHighlightRenderAction(3IV)()

NAME

SoLineHighlightRenderAction — selection highlight style

INHERITS FROM

SoAction > SoGLRenderAction > SoLineHighlightRenderAction

SYNOPSIS

#include <Inventor/actions/SoLineHighlightRenderAction.h>


Methods from class SoLineHighlightRenderAction:


SoLineHighlightRenderAction()

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()

DESCRIPTION

SoLineHighlightRenderAction is a render action which renders the specified scene graph, then renders each selected object again in wireframe. Selected objects are specified by the first SoSelection node in the scene to which this action is applied. If there is no renderable geometry in a selected object, no highlight is rendered for that object. A highlight render action can be passed to the setGLRenderAction() method of SoXtRenderArea to have an affect on scene graphs.

METHODS


SoLineHighlightRenderAction()

Constructor.



virtual void apply(SoNode *node)

This renders the passed scene graph, and also renders each selected object in wireframe, 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 back 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). The application is responsible for forcing a redraw of the scene to see the affects 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 more information. The application is responsible for forcing a redraw of the scene to see the affects of this change.



void setLineWidth(float width)

float getLineWidth()

Set and get the line width of the highlight. Default is 3. The application is responsible for forcing a redraw of the scene to see the affects of this change.


EXAMPLE

Here is an example of how a line highlight can be specified for a particular selection node and render area.



SoXtRenderArea *myRenderArea;
SoSelection *mySelection;
// Set the highlight render action
myRenderArea->setGLRenderAction(
new SoLineHighlightRenderAction());
// Automatic redraw on selection changes
myRenderArea->redrawOnSelectionChange(mySelection);

SEE ALSO

SoBoxHighlightRenderAction, SoGLRenderAction, SoSelection, SoXtRenderArea, SoDrawStyle, SoInteraction