1 #ifndef COIN_SOCAMERA_H
2 #define COIN_SOCAMERA_H
27 #include <Inventor/nodes/SoSubNode.h>
28 #include <Inventor/SbViewportRegion.h>
29 #include <Inventor/SbViewVolume.h>
30 #include <Inventor/fields/SoSFRotation.h>
31 #include <Inventor/fields/SoSFEnum.h>
32 #include <Inventor/fields/SoSFVec3f.h>
33 #include <Inventor/fields/SoSFFloat.h>
35 #include <Inventor/SbVec3f.h>
36 #include <Inventor/SbBox3f.h>
38 #define SO_ASPECT_SQUARE 1.0f
39 #define SO_ASPECT_VIDEO (4.0f/3.0f)
40 #define SO_ASPECT_35mm_ACADEMY 1.371
41 #define SO_ASPECT_16mm 1.369
42 #define SO_ASPECT_35mm_FULL 1.33333
43 #define SO_ASPECT_70mm 2.287
44 #define SO_ASPECT_CINEMASCOPE 2.35
45 #define SO_ASPECT_HDTV (16.0f/9.0f)
46 #define SO_ASPECT_PANAVISION 2.361
47 #define SO_ASPECT_35mm (3.0f/2.0f)
48 #define SO_ASPECT_VISTAVISION 2.301
60 static void initClass(
void);
63 CROP_VIEWPORT_FILL_FRAME,
64 CROP_VIEWPORT_LINE_FRAME,
65 CROP_VIEWPORT_NO_FRAME,
78 void pointAt(
const SbVec3f & targetpoint);
79 void pointAt(
const SbVec3f & targetpoint,
const SbVec3f & upvector);
80 virtual void scaleHeight(
float scalefactor) = 0;
81 virtual SbViewVolume getViewVolume(
float useaspectratio = 0.0f)
const = 0;
83 const float slack = 1.0f);
85 const float slack = 1.0f);
94 void setStereoMode(StereoMode mode);
95 StereoMode getStereoMode(
void)
const;
97 void setStereoAdjustment(
float adjustment);
98 float getStereoAdjustment(
void)
const;
99 void setBalanceAdjustment(
float adjustment);
100 float getBalanceAdjustment(
void)
const;
115 virtual void viewBoundingBox(
const SbBox3f & box,
float aspect,
117 virtual void jitter(
int numpasses,
int curpass,
124 const SbBool considermodelmatrix = TRUE);
127 const int viewportmapping,
133 StereoMode stereomode;
134 float stereoadjustment;
135 float balanceadjustment;
138 friend class SoCameraP;
141 #endif // !COIN_SOCAMERA_H
The SoBase class is the top-level superclass for a number of class-hierarchies.SoBase provides the ba...
Definition: SoBase.h:36
The SoRayPickAction class does ray intersection with scene graphs.For interaction with the scene grap...
Definition: SoRayPickAction.h:41
Definition: SoCamera.h:89
virtual void getPrimitiveCount(SoGetPrimitiveCountAction *action)
Definition: SoNode.cpp:870
SoSFFloat nearDistance
Definition: SoCamera.h:74
ViewportMapping
Definition: SoCamera.h:62
The SoCamera class is the abstract base class for camera definition nodes.To be able to view a scene...
Definition: SoCamera.h:54
The SoSFRotation class is a container for an SbRotation.This field is used where nodes, engines or other field containers needs to store a single rotation definition.
Definition: SoSFRotation.h:31
Definition: SoCamera.h:90
The SbBox3f class is an abstraction for an axis aligned 3 dimensional box.This box abstraction class ...
Definition: SbBox3f.h:37
StereoMode
Definition: SoCamera.h:88
The SoNode class is the base class for nodes used in scene graphs.Coin is a retained mode 3D visualiz...
Definition: SoNode.h:47
SoSFRotation orientation
Definition: SoCamera.h:72
The SoSFEnum class is a container for an enum value.This field is used where nodes, engines or other field containers needs to store one particular value out of an enumerated set.
Definition: SoSFEnum.h:31
SoSFFloat aspectRatio
Definition: SoCamera.h:73
SoSFVec3f position
Definition: SoCamera.h:71
SoSFFloat focalDistance
Definition: SoCamera.h:76
virtual void rayPick(SoRayPickAction *action)
Definition: SoNode.cpp:1115
virtual void audioRender(SoAudioRenderAction *action)
Definition: SoNode.cpp:1283
The SoPath class is a container class for traversal path descriptions.SoPath objects contain a list o...
Definition: SoPath.h:43
The SoAudioRenderAction class renders the aural parts of the scene graph.Applying this method at a ro...
Definition: SoAudioRenderAction.h:33
The SoAction class is the base class for all traversal actions.Applying actions is the basic mechanis...
Definition: SoAction.h:68
The SbVec3f class is a 3 dimensional vector with floating point coordinates.This vector class is used...
Definition: SbVec3f.h:40
SoSFFloat farDistance
Definition: SoCamera.h:75
virtual void doAction(SoAction *action)
Definition: SoNode.cpp:785
The SoHandleEventAction class distributes user events to the scene.This is the action used by the GUI...
Definition: SoHandleEventAction.h:37
The SoGetPrimitiveCountAction class counts the primitives in a scene.Apply this action to a scene if ...
Definition: SoGetPrimitiveCountAction.h:34
The SoGetBoundingBoxAction class calculates bounding boxes for nodes and subgraphs.If this action is applied to a path or scene graph root, it will calculate the bounding box and the center point of the geometry contained within the scene.
Definition: SoGetBoundingBoxAction.h:36
The SbViewVolume class is a viewing volume in 3D space.This class contains the necessary information ...
Definition: SbViewVolume.h:41
The SoCallbackAction class invokes callbacks at specific nodes.This action has mechanisms for trackin...
Definition: SoCallbackAction.h:71
SoSFEnum viewportMapping
Definition: SoCamera.h:70
The SoSFFloat class is a container for a floating point value.This field is used where nodes...
Definition: SoSFFloat.h:30
virtual void getBoundingBox(SoGetBoundingBoxAction *action)
Definition: SoNode.cpp:841
The SoSFVec3f class is a container for an SbVec3f vector.This field is used where nodes...
Definition: SoSFVec3f.h:31
The SbViewportRegion class is a viewport within a full window.The SbViewportRegion class contains inf...
Definition: SbViewportRegion.h:31
virtual void GLRender(SoGLRenderAction *action)
Definition: SoNode.cpp:930
virtual void callback(SoCallbackAction *action)
Definition: SoNode.cpp:1002
virtual void handleEvent(SoHandleEventAction *action)
Definition: SoNode.cpp:1059
#define SO_NODE_ABSTRACT_HEADER(classname)
The SoGLRenderAction class renders the scene graph with OpenGL calls.Applying this method at a root n...
Definition: SoGLRenderAction.h:41