!<copyright>
!
! Copyright (c) 1995,96
! Institute for Information Processing and Computer Supported New Media (IICM),
! Graz University of Technology, Austria.
!
!</copyright>

!<file>
!
! file:      SceneViewer.ad -- VRweb Xattributes
!
! created:   nn nnn 1995   Michael Pichler
!
! changed:   23 Feb 1996   Michael Pichler
!
! $Id: SceneViewer.ad,v 1.5 1996/03/21 16:23:42 mpichler Exp $
!
!</file>


! Here you find a documentation of the most important X-attributes of
! VRweb (Harmony Scene Viewer) and their default values


! VRweb follows the Harmony resource policy, which is documented in
! resource file "Harmony" (part of Harmony distribution), and at
!
!   http://hyperg.iicm.tu-graz.ac.at/harmony-technical
!
! for more information about Harmony check
! http://hyperg.iicm.tu-graz.ac.at/harmony
!
! Widgets configuration is not dealt with here for brevity.
!
! Please note: resource names may be subject to change in future releases.


! Configuration settings can be made the following ways (from highest to
! lowest priority):
! 
! 1. command line arguments
! 
! 2. resource file $XENVIRONMENT [or, if not set, .Xdefaults-hostname]
! 
! 3. the X server resource database
!    (typically loaded at startup with xrdb $HOME/.Xdefaults)
!    (call "xrdb -query | fgrep Harmony" to find currently set values)
! 
! 4. resource file $XAPPLRESDIR/Harmony [or, if not set, ~/Harmony]
! 
! 5. (global) resource file /usr/lib/X11/app-defaults/Harmony
! 
! 6. default values, hard-coded in program


! /*** general settings ***/

! directory to store temporary data (texture images, inline data)
Harmony.Scene.tmpDir:                   /tmp

! directory for VRweb on-line help (must be absolute path if given)
! Harmony.Scene.helpDir: $HOME/.vrweb/help

! anchor activation feedback time (in seconds)
Harmony.Scene.activateFeedbackTime:     1.0

! GUI: SGIMotif (default), Motif, OpenLook, monochrome supported
Harmony*gui:                            SGIMotif

! user interface language: one of english|german|french|spanish
! italian may be supported some day, styrian available for fun
Harmony.Scene*language:                 english

! WWW browser for anchors/inlines: netscape if mosaic non-true
Harmony.Scene*mosaic:                   true

! Interpret all WWWInline/Texture2D URLs as references to local files
! default: assume http: unless file: explicitly stated
Harmony.Scene*localInlines:             false


! /*** display settings ***/

! default background (dialogs)
Harmony.Scene*background:               #EEEEEE

! background for scene window (3D drawings)
Harmony.Scene.3D.background:            #CCCCCC

! font
Harmony.Scene*font: -*-new century schoolbook-medium-r-*-*-17-*-*-*-*-*-*-*
!  SGI motif kit also defines a menu font with the following attributes:
!Harmony*MenuBar.font:
!Harmony*MenuItem.font:
!  Button fonts may be specified with:
!Harmony*Button.font:

! foreground color can be changed like font:
Harmony.Scene*foreground:               black

! double buffering of GUI elements (menus, dialogs)
Harmony.Scene*double_buffered:          on

! overlay planes for popup windows are not used by default
Harmony.Scene*PopupWindow*overlay:      false

! single or double buffering (default) for 3D graphics:
Harmony.Scene*single_buffered:          off

! render OpenGL via X-server (slower; debugging purposes)
! if turned off (default) use Hardware (if available)
Harmony.Scene*indirectRendering:        off

! inquire a visual with Alpha bitplanes (necessary for transparency)
Harmony.Scene*alphaBitplanes:           off

! Mesa's backbuffer type - one of pixmap, image, auto
! pixmap generally faster on simple scenes (small/few polygons)
! image generally faster on local display (or slow X-server)
! auto (default) uses a pixmap for wireframe, and an image otherwise
Harmony.Scene*mesabackbuf:              auto

! anchor highlighting in mode "brightness": object (parts) with links
! will be shifted in brightness to [0.7, 1.0], other objects to [0.0, 0.3]
! by default; make sure having a contrast large enough
Harmony.Scene.minBrightnessAnchors:     0.7
Harmony.Scene.maxBrightnessNonAnchors:  0.3

! drawing mode - one of wireframe, hidden line, flat shading,
! smooth shading, texturing (command line: -draw[mode] mode)
Harmony.Scene.drawmode:                 smooth shading
! interactive drawing mode (during dragging) one of the navigation
! modes above or "same mode", meaning same drawing mode
! (command line: -intdraw[mode])
Harmony.Scene.intdrawmode:              same mode
! note: for plain X-renderers (Mesa Library) there are different
! default values: drawmode flat shading and intdrawmode wireframe

! far clipping plane (multiple of scene diameter; > 1.0)
Harmony.Scene.clipFarFactor:         5.0
! ratio far/near (determines Z-buffer precision; > 1.0)
! defaults to 1000.0 for OpenGL and 100.0 for Mesa
!Harmony.Scene.clipNearRatio:       100.0
! upper bound for near clipping plane (absolute; > 0.0)
Harmony.Scene.clipNearMaximum:       1.0

! anti-aliasing of wireframes
Harmony.Scene.antialiasing:             off


! /*** navigation settings ***/

! the time between two clicks to be a double-click (in ms)
Harmony.Scene*clickDelay:                     500

! collision detection (on by default)
Harmony.Scene*collisionDetection:       on

! collision distance (also changable interactively via Navigate Settings)
Harmony.Scene*collisionDistance:        1.5

! this resource lets you control the overall speed
! all constants below are multiplied by this factor, so you can adapt
! for different speed of Hardware (set a lower factor for faster HW).
! (command line argument: -speed speedFactor)
Harmony.Scene*speedFactor:              1.0

! The following values are mode-specific velocity constants and rarely
! need to be changed by users, possibly except for the fly-to speed,
! which can also be set interacively (Navigate Settings).

! hint: choose negative values for ...TurnVert to swap up and down movements
! (like in flight simulators).

! movements are relative to the window size and the scene diameter
! angles are internally measured in radians, hence the 3.14 etc.

! mode "Flip Object"
! focal length for panning; higher values result in faster translations
Harmony.Scene*FlipFocal:                2.0
! speed of (object) zooming, of horicontal and vertical rotation
Harmony.Scene*FlipZoom:                 1.0
Harmony.Scene*FlipTurnHor:              3.14
Harmony.Scene*FlipTurnVert:             1.57

! modes "Walk" and "Heads-up"
! focal length for all modes other than "Flip Object" (see FlipFocal)
Harmony.Scene*WalkFocal:                0.5
! walk and heads-up can be used to control motions or velocity by
! dragging the mouse; there are two sets of Xdefaults for these submodes
! (camera) zooming, of horicontal and vertical rotation
Harmony.Scene*WalkZoom:                 0.75
Harmony.Scene*WalkTurnHor:              1.57
Harmony.Scene*WalkTurnVert:             0.785
! large distance zooming and rotation (movement raised to 3rd power)
Harmony.Scene*WalkZoom3:                2.0
Harmony.Scene*WalkTurnHor3:             12.57
Harmony.Scene*WalkTurnVert3:            6.28
! velocity of (camera) zooming, panning, of horicontal and vertical rotation
Harmony.Scene*VelocityZoom:             0.01
Harmony.Scene*VelocityPan:              0.1
Harmony.Scene*VelocityTurnHor:          0.196
Harmony.Scene*VelocityTurnVert:         0.0982
! velocity of larger distance zooming, panning and rotation (3rd power)
Harmony.Scene*VelocityZoom3:            2.0
Harmony.Scene*VelocityPan3:             1.0
Harmony.Scene*VelocityTurnHor3:         12.5
Harmony.Scene*VelocityTurnVert3:        6.28

! mode "Fly"
! width and height of dead area in the centre
Harmony.Scene*FlyDeadX:                 20
Harmony.Scene*FlyDeadY:                 20
! (flying) speed increment per mouse click
Harmony.Scene*FlySpeedInc:              0.1
! speed of horicontal and vertical rotation
Harmony.Scene*FlyTurnHor:               0.785
Harmony.Scene*FlyTurnVert:              0.393

! mode "Fly to"
! amount of movement towards target point per frame
! (fraction of current distance, between 0 and 1)
Harmony.Scene*FlyToTran:                0.15
! amount of rotation towards normal per frame (fraction of current
! angular difference); FlyToRot should be chosen higher than FlyToTran
Harmony.Scene*FlyToRot:                 0.25
! this mode is more sensitive to machine speed than the other ones
! listed above; for a fast machine you may try:
! Harmony.Scene*FlyToTran:              0.05
! Harmony.Scene*FlyToRot:               0.08
