1 #ifndef COIN_SOCAMERA_H
2 #define COIN_SOCAMERA_H
36 #include <Inventor/nodes/SoSubNode.h>
37 #include <Inventor/SbViewportRegion.h>
38 #include <Inventor/SbViewVolume.h>
39 #include <Inventor/fields/SoSFRotation.h>
40 #include <Inventor/fields/SoSFEnum.h>
41 #include <Inventor/fields/SoSFVec3f.h>
42 #include <Inventor/fields/SoSFFloat.h>
44 #include <Inventor/SbVec3f.h>
45 #include <Inventor/SbMatrix.h>
46 #include <Inventor/SbBox3f.h>
48 #define SO_ASPECT_SQUARE 1.0f
49 #define SO_ASPECT_VIDEO (4.0f/3.0f)
50 #define SO_ASPECT_35mm_ACADEMY 1.371
51 #define SO_ASPECT_16mm 1.369
52 #define SO_ASPECT_35mm_FULL 1.33333
53 #define SO_ASPECT_70mm 2.287
54 #define SO_ASPECT_CINEMASCOPE 2.35
55 #define SO_ASPECT_HDTV (16.0f/9.0f)
56 #define SO_ASPECT_PANAVISION 2.361
57 #define SO_ASPECT_35mm (3.0f/2.0f)
58 #define SO_ASPECT_VISTAVISION 2.301
73 CROP_VIEWPORT_FILL_FRAME,
74 CROP_VIEWPORT_LINE_FRAME,
75 CROP_VIEWPORT_NO_FRAME,
92 void pointAt(
const SbVec3f & targetpoint);
93 void pointAt(
const SbVec3f & targetpoint,
const SbVec3f & upvector);
94 virtual void scaleHeight(
float scalefactor) = 0;
95 virtual SbViewVolume getViewVolume(
float useaspectratio = 0.0f)
const = 0;
97 const float slack = 1.0f);
99 const float slack = 1.0f);
108 void setStereoMode(StereoMode mode);
109 StereoMode getStereoMode(
void)
const;
111 void setStereoAdjustment(
float adjustment);
112 float getStereoAdjustment(
void)
const;
113 void setBalanceAdjustment(
float adjustment);
114 float getBalanceAdjustment(
void)
const;
124 virtual void viewBoundingBox(
const SbBox3f & box,
float aspect,
130 virtual void jitter(
int numpasses,
int curpass,
137 const SbBool considermodelmatrix = TRUE);
140 const int viewportmapping,
146 StereoMode stereomode;
147 float stereoadjustment;
148 float balanceadjustment;
151 friend class SoCameraP;
154 #endif // !COIN_SOCAMERA_H