Open Inventor Reference
SoLineHighlightRenderAction.h
Go to the documentation of this file.
1/*
2 *
3 * Copyright (C) 2000 Silicon Graphics, Inc. All Rights Reserved.
4 *
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
8 * version 2.1 of the License, or (at your option) any later version.
9 *
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
14 *
15 * Further, this software is distributed without any warranty that it is
16 * free of the rightful claim of any third person regarding infringement
17 * or the like. Any license provided herein, whether implied or
18 * otherwise, applies only to this software file. Patent licenses, if
19 * any, provided herein do not apply to combinations of this program with
20 * other software, or any other product whatsoever.
21 *
22 * You should have received a copy of the GNU Lesser General Public
23 * License along with this library; if not, write to the Free Software
24 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
25 *
26 * Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pkwy,
27 * Mountain View, CA 94043, or:
28 *
29 * http://www.sgi.com
30 *
31 * For further information regarding this notice, see:
32 *
33 * http://oss.sgi.com/projects/GenInfo/NoticeExplan/
34 *
35 */
36
37
38/*
39 * Copyright (C) 1990-93 Silicon Graphics, Inc.
40 *
41 _______________________________________________________________________
42 ______________ S I L I C O N G R A P H I C S I N C . ____________
43 |
44 |
45 | $Revision: 1.1.1.1 $
46 |
47 | Description:
48 | This is the SoLineHighlightRenderAction class, used to highlight
49 | the selection by drawing the selected shapes in wireframe.
50 |
51 | Classes : SoLineHighlightRenderAction
52 |
53 | Author(s) : David Mott
54 |
55 ______________ S I L I C O N G R A P H I C S I N C . ____________
56 _______________________________________________________________________
57 */
58
59
60#ifndef _SO_LINE_HIGHLIGHT_RENDER_ACTION_
61#define _SO_LINE_HIGHLIGHT_RENDER_ACTION_
62
64
65class SbColor;
66class SoSeparator;
67class SoLightModel;
68class SoBaseColor;
69class SoDrawStyle;
70class SoTexture2;
71
78
81
101
104 public:
105
108
111
112
114
118 virtual void apply(SoNode *node);
119
123 virtual void apply(SoPath *path);
127 virtual void apply(const SoPathList &pathList,
128 bool obeysRules = FALSE);
129
136 void setVisible(bool b) { hlVisible = b; }
138 bool isVisible() const { return hlVisible; }
139
143 void setColor( const SbColor &c );
145 const SbColor & getColor();
151 void setLinePattern( unsigned short pattern );
153 unsigned short getLinePattern();
155 void setLineWidth( float width );
158
159 SoINTERNAL public:
160 static void initClass();
161
162 protected:
169
171
172 private:
173 void constructorCommon();
174};
175
176#endif /* _SO_LINE_HIGHLIGHT_RENDER_ACTION_ */
177
#define FALSE
Definition SbBasic.h:79
#define SoINTERNAL
Definition SbBasic.h:155
#define INVENTOR_API
Disable some annoying warnings on MSVC 6.
Definition SbSystem.h:77
#define SO_ACTION_HEADER(className)
Macros to be called within the class definition header for an action subclass:
Definition SoSubAction.h:87
Color vector class.
Definition SbColor.h:84
Class for representing a viewport.
Node that defines an object's base color.
Definition SoBaseColor.h:94
Node that defines the style to use when rendering.
Renders a scene graph using OpenGL.
Node that defines the lighting model to use when rendering.
Line highlight - a subclass of SoGLRenderAction which renders the scene graph, then renders wireframe...
virtual ~SoLineHighlightRenderAction()
void setColor(const SbColor &c)
Set the color of the highlight.
virtual void apply(SoPath *path)
This renders the passed scene graph, and also renders each selected object in wireframe,...
SoSeparator * localRoot
Nodes which comprise the local highlight graph.
void setLineWidth(float width)
Set the line width.
SoLineHighlightRenderAction()
Constructor.
unsigned short getLinePattern()
Get the line pattern of the highlight.
virtual void apply(const SoPathList &pathList, bool obeysRules=FALSE)
This renders the passed scene graph, and also renders each selected object in wireframe,...
const SbColor & getColor()
Get the color of the highlight.
void setVisible(bool b)
This provides a convenient mechansim for turning highlights off or back on.
virtual void apply(SoNode *node)
This renders the passed scene graph, and also renders each selected object in wireframe,...
SoLineHighlightRenderAction(const SbViewportRegion &viewportRegion)
Constructor.
void setLinePattern(unsigned short pattern)
Set the line pattern of the highlight.
float getLineWidth()
Get the line width.
bool isVisible() const
Returns whether highlights will be rendered or not.
Abstract base class for all database nodes.
Definition SoNode.h:103
Maintains a list of pointers to paths.
Definition SoLists.h:212
Path that points to a list of hierarchical nodes.
Definition SoPath.h:109
Group node that saves and restores traversal state.
Texture mapping node.
Definition SoTexture2.h:143