Open Inventor Release 2024.2.1
 
Loading...
Searching...
No Matches
SoOrthographicCamera.h
1/*=======================================================================
2 * Copyright 1991-1996, Silicon Graphics, Inc.
3 * ALL RIGHTS RESERVED
4 *
5 * UNPUBLISHED -- Rights reserved under the copyright laws of the United
6 * States. Use of a copyright notice is precautionary only and does not
7 * imply publication or disclosure.
8 *
9 * U.S. GOVERNMENT RESTRICTED RIGHTS LEGEND:
10 * Use, duplication or disclosure by the Government is subject to restrictions
11 * as set forth in FAR 52.227.19(c)(2) or subparagraph (c)(1)(ii) of the Rights
12 * in Technical Data and Computer Software clause at DFARS 252.227-7013 and/or
13 * in similar or successor clauses in the FAR, or the DOD or NASA FAR
14 * Supplement. Contractor/manufacturer is Silicon Graphics, Inc.,
15 * 2011 N. Shoreline Blvd. Mountain View, CA 94039-7311.
16 *
17 * THE CONTENT OF THIS WORK CONTAINS CONFIDENTIAL AND PROPRIETARY
18 * INFORMATION OF SILICON GRAPHICS, INC. ANY DUPLICATION, MODIFICATION,
19 * DISTRIBUTION, OR DISCLOSURE IN ANY FORM, IN WHOLE, OR IN PART, IS STRICTLY
20 * PROHIBITED WITHOUT THE PRIOR EXPRESS WRITTEN PERMISSION OF SILICON
21 * GRAPHICS, INC.
22**=======================================================================*/
23/*=======================================================================
24** Author : Paul S. Strauss (MMM yyyy)
25**=======================================================================*/
26/*=======================================================================
27 *** THE CONTENT OF THIS WORK IS PROPRIETARY TO FEI S.A.S, (FEI S.A.S.), ***
28 *** AND IS DISTRIBUTED UNDER A LICENSE AGREEMENT. ***
29 *** ***
30 *** REPRODUCTION, DISCLOSURE, OR USE, IN WHOLE OR IN PART, OTHER THAN AS ***
31 *** SPECIFIED IN THE LICENSE ARE NOT TO BE UNDERTAKEN EXCEPT WITH PRIOR ***
32 *** WRITTEN AUTHORIZATION OF FEI S.A.S. ***
33 *** ***
34 *** RESTRICTED RIGHTS LEGEND ***
35 *** USE, DUPLICATION, OR DISCLOSURE BY THE GOVERNMENT OF THE CONTENT OF THIS ***
36 *** WORK OR RELATED DOCUMENTATION IS SUBJECT TO RESTRICTIONS AS SET FORTH IN ***
37 *** SUBPARAGRAPH (C)(1) OF THE COMMERCIAL COMPUTER SOFTWARE RESTRICTED RIGHT ***
38 *** CLAUSE AT FAR 52.227-19 OR SUBPARAGRAPH (C)(1)(II) OF THE RIGHTS IN ***
39 *** TECHNICAL DATA AND COMPUTER SOFTWARE CLAUSE AT DFARS 52.227-7013. ***
40 *** ***
41 *** COPYRIGHT (C) 1996-2014 BY FEI S.A.S, ***
42 *** BORDEAUX, FRANCE ***
43 *** ALL RIGHTS RESERVED ***
44**=======================================================================*/
45/*=======================================================================
46** Modified by : VSG (MMM YYYY)
47**=======================================================================*/
48
49
50#ifndef _SO_ORTHOGRAPHIC_CAMERA_
51#define _SO_ORTHOGRAPHIC_CAMERA_
52
53#include <Inventor/SbPImpl.h>
54#include <Inventor/nodes/SoCamera.h>
55
57//
58// Class: SoOrthographicCamera
59//
60// Orthographic camera node.
61//
63
64SO_PIMPL_PUBLIC_DECLARATION(SoOrthographicCamera)
65
66
113
114 SO_NODE_HEADER(SoOrthographicCamera);
115 SO_PIMPL_PUBLIC_HEADER(SoOrthographicCamera)
116
117 public:
118
123
128
132 virtual void scaleHeight(float scaleFactor);
133
146 virtual SbViewVolume getViewVolume(float useAspectRatio = 0.0) const;
147
149 virtual SbViewVolume getViewVolume(float useAspectRatio,
150 float nearDist,
151 float farDist,
152 SbVec3f position,
153 SbRotation orientation) const;
154
155 private:
157 static void initClass();
159 static void exitClass();
160
161 private:
162
164 virtual void viewBoundingBox(const SbBox3f &box, float aspect, float slack);
165
167 virtual ~SoOrthographicCamera();
168
169private:
170 void commonConstructor();
171};
172
173#endif /* _SO_ORTHOGRAPHIC_CAMERA_ */
174
3D box class.
Definition SbBox.h:649
Class for representing a rotation.
Definition SbRotation.h:126
3D vector class.
Definition SbVec.h:932
3D viewing volume class.
Abstract base class for camera nodes.
Definition SoCamera.h:188
Orthographic camera node.
SoOrthographicCamera()
Creates an orthographic camera node with default settings.
virtual void scaleHeight(float scaleFactor)
Scales the height of the camera, in this case, the height field.
virtual SbViewVolume getViewVolume(float useAspectRatio=0.0) const
Fills in a view volume structure, based on the camera.
virtual SbViewVolume getViewVolume(float useAspectRatio, float nearDist, float farDist, SbVec3f position, SbRotation orientation) const
Returns a view volume object, based on the camera's viewing parameters.
SoSFFloat height
Height of the viewing volume.
Field containing a floating-point value.
Definition SoSFFloat.h:78