/*
 ************************************************************************
 *  
 * Java 3D configuration file for a dual-screen desktop configuration
 * with each screen rotated toward the other by 30 degrees about Y from
 * planar.  The inside angle between them is 120 degrees.
 *  
 ************************************************************************
 */

// Create new screen objects and associate them with logical names and numbers.
// These numbers are used as indices to retrieve the AWT GraphicsDevice from
// the array that GraphicsEnvironment.getScreenDevices() returns.
// 
// NOTE: The GraphicsDevice order in the array is specific to the local
// site and display system.
// 
(NewScreen left  0)
(NewScreen right 1)

// Set the available image areas for full screens.
// 
(ScreenProperty left  PhysicalScreenWidth  0.360)
(ScreenProperty left  PhysicalScreenHeight 0.288)

(ScreenProperty right PhysicalScreenWidth  0.360)
(ScreenProperty right PhysicalScreenHeight 0.288)

// Specify full screen windows.
// 
(ScreenProperty left  WindowSize NoBorderFullScreen)
(ScreenProperty right WindowSize NoBorderFullScreen)

// Set the TrackerBaseToImagePlate transforms for these screens.
// 
// The tracker base is set here to the middle of the edge shared by the two
// screens.  Each screen is rotated 30 degrees toward the other about the
// tracker base +Y axis, so that the tracker base +Z is centered between the
// two screens.
//
(ScreenProperty left  TrackerBaseToImagePlate
                       (RotateTranslate (Rotate     0.000 -30.000 0.0)
                                        (Translate  0.360   0.144 0.0)))

(ScreenProperty right TrackerBaseToImagePlate
                       (RotateTranslate (Rotate     0.000  30.000 0.0)
		                        (Translate  0.000   0.144 0.0)))


// Create a view using the defined screens.
// 
(NewView view0)
(ViewProperty view0 Screen left)
(ViewProperty view0 Screen right)
(ViewProperty view0 CenterEyeInCoexistence (0.0 0.0 0.45))