SoBoxHighlightRenderAction(3IV)

SoBoxHighlightRenderAction - a selection highlight style

As shipped in IRIX 6.5.22. Added in IRIX 6.5.22.

NAME
     SoBoxHighlightRenderAction - a selection highlight style

INHERITS FROM
     SoAction > SoGLRenderAction > SoBoxHighlightRenderAction

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


DESCRIPTION
     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.

METHODS
                         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.
EXAMPLE
     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);





SEE ALSO
     SoLineHighlightRenderAction, SoGLRenderAction, SoSelection,
     SoXtRenderArea, SoDrawStyle, SoInteraction