div class="twikiTopBar">

Chair for Computer Aided Medical Procedures & Augmented Reality
Lehrstuhl für Informatikanwendungen in der Medizin & Augmented Reality

SoStereoCameraKit Class Reference
[Viewer]

A virtual rack for two Cameras. More...


Public Member Functions

 SoStereoCameraKit ()
 ~SoStereoCameraKit ()
void selectCameraLeft ()
void selectCameraRight ()
void setLineInterleavedMode (bool)
bool isLineInterleavedMode ()
void setStencil (bool)
bool isStencil ()
SoCamera * getCameraLeft ()
SoCamera * getCameraRight ()
SbBool isActiveCameraLeft ()
SbBool isActiveCameraRight ()
SoSwitch * getStereoSwitch ()
void connect2Pose ()
void setPoseData (float x, float y, float z, float q1, float q2, float q3, float q4)
void setPoseData (float *pos, float *rot)
void constrainCameras (SoComposeMatrix *)
void setEyeOffsetLeft (float *)
void setEyeOffsetRight (float *)
void setAngles (float left, float right)

Static Public Member Functions

static void initClass ()

Private Member Functions

void disconnectPose ()

Private Attributes

SoSFVec3f eyeOffsetLeft
SoSFVec3f eyeOffsetRight

Detailed Description

A virtual rack for two Cameras.

SoStereoCameraKit represents a node kit with two (stereo) Cameras (one for the left eye (camLeft part) and one for the right eye (camRight part)) "mounted" on a virtual "rack" that can be freely positioned (camXf part). Using this kit, a viewer can manipulate (move) two cameras simultaneously, and switch cameras at will for rendering (camSwitch part).

Warning:
The only parts that should be specified by the user are: camLeft: the Camera used to render the view for the left eye, camRight: the Camera used to render the view for the right eye,

Definition at line 82 of file SoStereoCameraKit.h.


Constructor & Destructor Documentation

SoStereoCameraKit::SoStereoCameraKit  ) 
 

The constructor inits the fields of the kit

Definition at line 52 of file SoStereoCameraKit.cpp.

SoStereoCameraKit::~SoStereoCameraKit  ) 
 

The destructor does nothing

Definition at line 90 of file SoStereoCameraKit.cpp.


Member Function Documentation

void SoStereoCameraKit::connect2Pose  ) 
 

creates GlobalFields for incoming PoseData and Connects them with the position field of the CamRack

Definition at line 176 of file SoStereoCameraKit.cpp.

void SoStereoCameraKit::constrainCameras SoComposeMatrix *   ) 
 

Constrains the two stereo Cameras to the movement of the camera rack this is needed for a correct stereo offset.

Warning:
internal method

Definition at line 201 of file SoStereoCameraKit.cpp.

void SoStereoCameraKit::disconnectPose  )  [private]
 

Disconnects the Camera from incoming Pose called by Destructor

Definition at line 191 of file SoStereoCameraKit.cpp.

SoCamera * SoStereoCameraKit::getCameraLeft  ) 
 

Returns left camera.

Returns:
left camera

Definition at line 123 of file SoStereoCameraKit.cpp.

SoCamera * SoStereoCameraKit::getCameraRight  ) 
 

Returns right camera.

Returns:
right camera

Definition at line 132 of file SoStereoCameraKit.cpp.

SoSwitch * SoStereoCameraKit::getStereoSwitch  ) 
 

Returns the camera switch

Definition at line 168 of file SoStereoCameraKit.cpp.

void SoStereoCameraKit::initClass  )  [static]
 

Inventor class initialization

Definition at line 44 of file SoStereoCameraKit.cpp.

SbBool SoStereoCameraKit::isActiveCameraLeft  ) 
 

Returns TRUE, if left camera is active.

Definition at line 141 of file SoStereoCameraKit.cpp.

SbBool SoStereoCameraKit::isActiveCameraRight  ) 
 

Returns TRUE, if right camera is active.

Definition at line 150 of file SoStereoCameraKit.cpp.

bool SoStereoCameraKit::isLineInterleavedMode  ) 
 

returns LineInterleavedMode (on or off)

Bug:
is this used anymore?

Definition at line 267 of file SoStereoCameraKit.cpp.

bool SoStereoCameraKit::isStencil  ) 
 

returns Stencil usage (on or off)

Bug:
is this used anymore?

Definition at line 282 of file SoStereoCameraKit.cpp.

void SoStereoCameraKit::selectCameraLeft  ) 
 

Switches to camera for left eye

Definition at line 104 of file SoStereoCameraKit.cpp.

void SoStereoCameraKit::selectCameraRight  ) 
 

Switches to camera for right eye

Definition at line 114 of file SoStereoCameraKit.cpp.

void SoStereoCameraKit::setAngles float  left,
float  right
 

Set the to Angles for correct Stereo ViewVolume

Definition at line 306 of file SoStereoCameraKit.cpp.

void SoStereoCameraKit::setEyeOffsetLeft float *   ) 
 

Sets the EyeOffset for Left eye

Parameters:
ptr a float Array (size 3)

Definition at line 290 of file SoStereoCameraKit.cpp.

void SoStereoCameraKit::setEyeOffsetRight float *   ) 
 

Sets the EyeOffset for Right Eye

Parameters:
ptr a float Array (size 3)

Definition at line 298 of file SoStereoCameraKit.cpp.

void SoStereoCameraKit::setLineInterleavedMode bool   ) 
 

switches LineInterleaved StereoRendering on or off

Bug:
is this used anymore?

Definition at line 260 of file SoStereoCameraKit.cpp.

void SoStereoCameraKit::setPoseData float *  pos,
float *  rot
 

Sets Translation and Rotation of the Camera Rack

Parameters:
pos a 3D float for position (x,y,z)
rot a 4D unit quaternion for rotation (QX, QY, QZ, QW)

Definition at line 242 of file SoStereoCameraKit.cpp.

void SoStereoCameraKit::setPoseData float  x,
float  y,
float  z,
float  q1,
float  q2,
float  q3,
float  q4
 

Sets Translation and Rotation of the Camera Rack

Definition at line 225 of file SoStereoCameraKit.cpp.

void SoStereoCameraKit::setStencil bool   ) 
 

switches Stencil Buffering on or off

Bug:
is this used anymore?

Definition at line 275 of file SoStereoCameraKit.cpp.


Field Documentation

SoSFVec3f SoStereoCameraKit::eyeOffsetLeft [private]
 

Offset for left eye

Definition at line 196 of file SoStereoCameraKit.h.

SoSFVec3f SoStereoCameraKit::eyeOffsetRight [private]
 

Offset for right eye

Definition at line 198 of file SoStereoCameraKit.h.

SoStereoCameraKit Class Reference | generated on Sun Apr 29 02:01:11 2007 by Doxygen 1.4.1 for DWARF