Open Inventor Reference
SoOrthographicCamera.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,91 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  | $Revision: 1.1.1.1 $
45  |
46  | Description:
47  | This file defines the SoOrthographicCamera node class.
48  |
49  | Author(s) : Paul S. Strauss
50  |
51  ______________ S I L I C O N G R A P H I C S I N C . ____________
52  _______________________________________________________________________
53  */
54 
55 #ifndef _SO_ORTHOGRAPHIC_CAMERA_
56 #define _SO_ORTHOGRAPHIC_CAMERA_
57 
59 
60 
63 
103 
105 
107 
108  public:
110 
111 
114 
116 
119 
121  virtual void scaleHeight( float scaleFactor );
122 
126  virtual SbViewVolume getViewVolume(float useAspectRatio = 0.0) const;
127 
128  SoINTERNAL public:
129  static void initClass();
130 
131  protected:
134  virtual void viewBoundingBox(const SbBox3f &box,
135  float aspect, float slack);
136 
137  protected:
139 };
140 
141 #endif /* _SO_ORTHOGRAPHIC_CAMERA_ */
#define SoINTERNAL
Definition: SbBasic.h:155
#define INVENTOR_API
Disable some annoying warnings on MSVC 6.
Definition: SbSystem.h:81
#define SO_NODE_HEADER(className)
Non-abstract classes have everything abstract classes have, plus a way to create an instance.
Definition: SoSubNode.h:170
3D box class.
Definition: SbBox.h:81
3D viewing volume class.
Definition: SbLinear.h:1058
Abstract base class for camera nodes.
Definition: SoCamera.h:96
Orthographic camera node.
SoOrthographicCamera()
Creates an orthographic camera node with default settings.
static void initClass()
virtual void viewBoundingBox(const SbBox3f &box, float aspect, float slack)
Positions camera to view passed bounding box with given aspect ratio and current height.
virtual void scaleHeight(float scaleFactor)
Scales the height of the camera, in this case, the 'height' field.
virtual ~SoOrthographicCamera()
virtual SbViewVolume getViewVolume(float useAspectRatio=0.0) const
Fills in a view volume structure, based on the camera.
SoSFFloat height
Height of the viewing volume.
Field containing a floating-point value.
Definition: SoSFFloat.h:77