Provided by: inventor-doc_2.1.5-10+dfsg-2.1build2_all bug

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

                                                                              SoLineHighlightRenderAction(3IV)()