Scanning pods... Creating MesaWorkstation.html from MesaWorkstation.pod MESAWORKSTATION


NAME

MesaWorkstation - A simple workstation abstraction widget for Mesa/X


DESCRIPTION


Resources

The following X resources are available in addition to the MesaDrawingArea resources:

___________________________________________________________________________ | | | | | | Name | Class | Type | OpenGL attribute | |____________________|____________________|_________|______________________| | | | | | | | | | | |____________________|____________________|_________|______________________|


Actions

Projection ()

Move ()

.


Translations

~Shif<Key>Left: Move(l)

Shif<Key>Left: Move(l,10)

~Shif<Key>Right: Move(r)

Shif<Key>Right: Move(r,10)

~Shif<Key>Up: Move(u)

Shif<Key>Up: Move(u,10)

~Shif<Key>Down: Move(d)

Shif<Key>Down: Move(d,10)

Move(+)

Move(-)

~Shif<Key>l: Projection(l)

Shif<Key>l: Projection(L)

~Shif<Key>r: Projection(r)

Shif<Key>r: Projection(R)

~Shif<Key>b: Projection(b)

Shif<Key>b: Projection(B)

~Shif<Key>t: Projection(t)

Shif<Key>t: Projection(T)

~Shif<Key>n: Projection(n)

Shif<Key>n: Projection(N)

~Shif<Key>f: Projection(f)

Shif<Key>f: Projection(F)

~Shif<Key>a: Projection(a)

Shif<Key>a: Projection(A)

Projection(p)

Projection(o)

.


Utility functions

The following utility functions are available

void GLwBeginProjection (Widget w)

void GLwEndProjection (void)
The following code snippet selects perspective projection for the workstation ws:

GLwBeginProjection (ws); glFrustum (-1.0, 1.0, -1.0, 1.0, 1.0, 10.0); GLwEndProjection ();

During redisplay, this will be executed as a display list with the matrix mode set to GL_PROJECTION and an identity matrix on top of the projection matrix stack.

void GLwPostProjectionList (Widget w, GLuint p)

void GLwPostProjectionMatrix (Widget w, GLdouble *m)

void GLwPostCurrentProjection (Widget w)

void GLwUnpostProjection (Widget w)

GLuint GLwGetProjectionList (Widget w)

int GLwGetProjectionMatrix (Widget w, GLdouble *m)

void GLwSetFrustumProjection (Widget w, GLdouble left, GLdouble right,
GLdouble bottom, GLdouble top, GLdouble near, GLdouble far)

void GLwSetOrthoProjection (Widget w, GLdouble left, GLdouble right,
GLdouble bottom, GLdouble top, GLdouble near, GLdouble far)

void GLwBeginView (Widget w)

void GLwEndView (void)
The following code snippet selects a view from the z-axis for the workstation ws:

GLwBeginView (ws); gluLookAt (0.0, 0.0, 3.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0); GLwEndView ();

During redisplay, this will be executed as a display list with the matrix mode set to GL_MODELVIEW and an identity matrix on top of the model view matrix stack.

void GLwPostViewList (Widget w, GLuint v)

void GLwPostViewMatrix (Widget w, GLdouble *m)

void GLwPostCurrentView (Widget w)

void GLwUnpostView (Widget w)

GLuint GLwGetViewList (Widget w)

int GLwGetViewMatrix (Widget w, GLdouble *m)

void GLwSetPolarView (Widget w, GLdouble r, GLdouble theta, GLdouble phi)

void GLwPostObject (Widget w, GLuint o)
posts object to w.

void GLwUnpostObject (Widget w, GLuint o)

void GLwUnpostAllObjects (Widget w)

void GLwRedrawObjects (Widget w)
force a redraw of all objects posted to w.

.


SEE ALSO

GLwDrawingArea, MesaDrawingArea


AUTHOR

Thorsten.Ohl @ Physik.TH-Darmstadt.de


DATE

$Id: MesaWorkstation.pod,v 1.6 1995/05/19 20:31:00 ohl Exp $