The GL Display Panel

The GL Display Panel is the main glups panel. It is the one that allow to interact in real-time with the N-body model. It is fully based on OpenGL.

The GL Display render different objects.

  • points that corresponds to the different particle types

  • axes that mark the point of interest

  • a mire that indicate the center of the screen

  • grids

  • boxes

Observer position and point of interest

The position of the observer (the camera) is defined by a triplet of normed orthogonal vectors defined by four points. The first and central point is called the eye (EYE), the second is the point (PTS). The verctor EYE-PTS defines the line of sight. the third is the head (HEA) and the fourth the arm (ARM). Both points are such that the vectors EYE-HEA and EYE-ARM are perpandicular to the vector EYE-PTS as well as to each other. The values of those four points is stored in a 4x3 matrix called M. The values of these points may be obtained by calling the method M() (self.gl.N() in the python console).

In addition to the observer position, we define a point of interest. The coordinates of this point is stored in the vector is accessible through the method P() (self.gl.P() in the python console).

Interaction modes

Different interaction modes exist.

Observer mode

By default glups starts in observer mode. In this mode, mouse or keyboard events define the position of the observer (the camera) with respect to the point of interest.

Object mode

In this mode mouse or keyboard events will directly impact the current selected object.

Keyboard commands

Key

Command

“home”

increase near plane factor (frustum mode)

“end”

decrease near plane factor (frustum mode)

“page up”

increase far plane factor (frustum mode)

“page down”

decrease far plane factor (frustum mode)

d

switch to display mode

n

load and display next file

b

load and display previous file

q

quit

“escape”

quit

o

auto set display parameters

c

center the point of interest

i

display/hide informations

“back space”

make observer object active

“page up”

increase alpha

“page down”

decrease alpha

“period” ??

toggle projection mode

“insert”

increase stereo factor

“delete”

decrease stereo factor

“home”

increase field of view

“end”

decrease field of view

s

toggle stereo mode

f

trace particle trajectory (deprecated)

m

toggle the mire on/off

p

toggle the pointer on/off

“space”

switch between object and make them active

1

display/hide particle 1

2

display/hide particle 2

3

display/hide particle 3

4

display/hide particle 4

5

display/hide particle 5

6

display/hide particle 6

7

display/hide particle 7

8

display/hide particle 8

9

display/hide particle 9

0

display/hide particle 0

F1

record track

F7

read parameter file and update the display

F8

write parameter file

F9

toggle auto-motion on/off

F12

start/stop recording images