Gem
“Gem (Graphics Environment for Multimedia) is a vector-based application. Since vector-based applications describe objects in a logical way, they do not store sizes in pixels (as units on the screen). Instead, lengths are given in measures without any dimension. If a line is “1” unit long, you do not know, whether this is one meter, one AU or one fathom. But you can be sure, that logically this line is half as long as a line with a length of “2”.“ (Gem. IOhannes m zmölning, 2003)
“OpenGL is a hardware-independent, operating system independent, vendor neutral graphics API specification. Many vendors provide implementations of this specification for a variety of hardware platforms. Bindings exist primarily for the C programming language, but bindings are also available for Fortran and Ada.” https://web.cs.wpi.edu/~matt/courses/cs563/talks/OpenGL_Presentation/OpenGL_Presentation.html
Geos
The most basic Gem-objects are probably the so called Geos, which are “primitive” shapes. These are drawables that tell the renderer to “draw a certain shape.” One of these drawables is [square], that will draw a square.
Generally, control-objects are called before Geos. This is because of the openGL-architecture as a state machine.
Each Geo has it’s pivot point which is the centroid of the shape for simple shapes. When the renderer is told to draw a Geo, it will place the pivot-point of the Geo on the origin of the ordinates of the 3d-world
Patches
References
Gem. IOhannes m zmölning, 2003 Overview of OpenGL, https://web.cs.wpi.edu/~matt/courses/cs563/talks/OpenGL_Presentation/OpenGL_Presentation.html