G A M |
G
enerieren A bbilden
M odellieren |
General Goals How working Primitives |
GAM is a synonym for G Generieren (Generate), A Abbilden
(Imaging), M Modellieren (Modeling). The 3D -
Software GAM works like a construction set. Many PRIMITIVES
(2D, 3D) are available, which are embedded per menuitems in a fix coordinate system. Then you can
position them in space or change shape or size with TRANSFORMATIONS
. All 3D - primitives consist of plane facets. For example a cylinder is a
regular prism with 40 edges but it looks "round". Many imaging
methods – TOP VIEW, FRONT VIEW, SIDE VIEW, AXONOMETRY,
OBLIQUE PROJECTION, HORIZONTALPROJECTION,
PERSPECTIVE, top and front view, front and side view, top, front and side
view – are at your disposal. You can generate images in any direction of
projection. You can consider hidden lines and width of lines. Drawings can be
printed scaled. |
It is
important to note that while geometry education software shares many aspects
with conventional 3D computer-aided design (CAD) software at a first glance,
its aims and goals are fundamentally different. Geometry education software
is not intended for generating polished results, but puts an emphasis on the
construction process itself. While relatively simple geometric primitives and
operations will suffice for the intended audience of age 10 to 20, the user
interface must be both intuitive and instructive in terms of the provided
visualizations and tools. Commercial CAD software offers an overwhelming
variety of complex features and often has a step
learning curve. In contrast, geometry educators are interested in simple
construction tools that expose the underlying process in a comprehensive way. GAM helps geometry educators by adding computeranimated models (VRML) to their collection of traditional models. Look at the Examples. Goals and aims:
|
THULE SYSTEM
HOLDING SET
TURBINE DRIVE
|
With the top menuitems 2D -, 3D – primitives you can place Primitives in a fix coordinate
system (WKS, world coordinate system). Measurements are to type in the textfields of the appropriate window. In the example a
rectangle pyramid is defined. A good help to see the position in the WKS is a
raster (menuitem 2D
- Primitives - Raster) and showing the WKS selecting the button WKS. Defining the measurements you should note: Measurements can include constants, variables and arithmetic terms. GAM includes a
formula interpreter. Besides variables are needed to generate animations und
variants. |
Primitives
are placed in the world coordinate system (WKS). If a user coordinate system
(BKS) is activ, the
primitive is placed relative to the BKS. You can select placing between WKS
and BKS. You can define and handle as many BKS as
you want. |
||
LINE SEGMENT |
CUBE |
SADDLE - ROOF |
|
||
To transform objects of the project:
The Transformation is done relative to the WKS or relative to the
active BKS (you can select). |
With
CONGRUITY- |
TRANSLATE |
you can position
objects in space |
with TRANSFORMATIONS |
SCALE |
you can change
size and shape of objects |
SCALE
|
|
|
SCALING about |
|
|
SHEAR |
|
|
TAPER |
|
|
You can animate
in GAM all transformations (not SYMMETRY). If the
transformations SCALE, TRANSLATION, ROTATE, SCALING about a CENTRE, MOVE,
SPIRAL are animated you can decide that the export in VRML is also animated. |
||
To translate the rectangle pyramid (2x3.5x4)
in x - direction obout 2.5, in y - direction about
4 and in z - direction about 2 units, you must define the vector s of
translation in the window: s = (transx, transy, transz) = (2.5, 4, 2).
|
|
The sign
of the angle of rotation depends on the orientation of the axis. The axis is
an orientated line segment. The orientation of the axis a = P1P2 is fixed by the sequence
selecting the beginpoint P1
and endpoint P2. The sign of the angle
of rotation is positiv if it rotates clockwise when
you look in direction of the orientated axis. The orientation of the x – axis
is fixed by P1(0,0,0) P2(1,0,0), of the y – axis by P1(0,0,0) P2(0,1,0)
and of the z – axis by P1(0,0,0) P2(0,0,1). |
|
|
Notes: The orientated axis of rotation can be
selected by mouseclicks:
In the last case the axis begins in P1 and is orientated against the direction of
the actual image projection. In this case for example it is easy to select a
vertical axis of rotation, if the actual image method is top view (G). |
|
|
The
pyramid is to move, so that the groundplane becomes
to lay in the right plane of the prism. You must select per mouseclick
3 pairs of points (source point -> destination point) in the sequence P1,Q1; P2,Q2 and P3,Q3
. That causes: |
|
Solids BOOLE operations |
|
Solids CHAMFER a corner |
|
Solids BORING |
|
DELETE EDGES |
|
|
|
Solids FLATTEN |
|
Polygons COMMON OUTLINE COMMON AREA |
|
Polygons ROUND OFF CORNERS |
|
In all textfields you can type in constants, variables and arithmetic terms. |
Arithmetic
operation |
GAM |
Notes |
Addition |
+ |
|
Subtraction |
- |
|
Multiplication |
* |
|
Division |
/ |
|
Parentheses |
( ) |
|
sin x |
SIN(X) |
X in degrees |
arcsin
x |
ASIN(X) |
-1<=x<=1-> -90..90 degree |
cos x |
COS(X) |
|
arccos
x |
ACOS(X) |
-1<=x<=1 -> 0..180 degree |
tan x |
TAN(X) |
|
arctan
x |
ATN(X) |
result
in degrees |
ex |
EXP(X) |
|
ln
x |
LN(X) |
X > 0, base
e |
lg
x |
LG(X) |
X > 0, base
10 |
x2 |
SQR(X) |
|
x0.5 |
SQRT(X) |
X >= 0 |
|x| |
ABS(X) |
|
sinh
x |
SINH(X) |
|
arsinh
x |
ASINH(X) |
|
cosh
x |
COSH(X) |
|
arcosh
x |
ACOSH(X) |
X >= 1 |
tanh
x |
TANH(X) |
|
artanh
x |
ATANH(X) |
1 < X < 1 |
rad x |
RAD(X) |
X in degrees
-> radiant |
deg
x |
DEG(X) |
X in radiant
-> degree |
round
x |
RND(X) |
|
sign(x) |
SGN(X) |
x<0 -> -1, x=0 -> 0, x>0
-> 1 |
if
(...) |
IF(condition:yesvalue:novalue) |
example
IF(b>600:12:8) |
How to work with variables in GAM
to create variant constructions will be demonstrated by the example Gabelkopf. |
The object
shown right should have variable measurements: |
|
Cuboid Q1: b x l x h Cuboid Q2: b x d x h1 Cylinder Z1:
d/2 x b Cylinder Z2:
d1/2 x b Cuboid Q3: b1
x l x (h1+d) |
|
In this
phase you can create a variant of the project by changing the values of one
or more variables, evaluate by selecting button examine and update the
drawing by selecting button draw,.. . |
|
To
generate the wanted object BOOLE operations are necessary (
menuitem Modeling - .. ): |
If now you
want to change the values of one or more variables you must go back to the
situation of the project before modeling. You can do this selecting menuitem Edit - back a few times but better selecting
menuitem Edit -Bookmarks
("before") - go to . After changing variables you must repeat the
steps for modeling. |
Notes:
|
|
EW schwarz |
Saving a
project, which uses variables, the list of variables will be added to the
lines of the protocol after a row "*****". Have a look at the left
column.
|
The
project tangram demonstrates how to animate
one ore more objects of a project. |
|
Tangram is an old
chinese game. Look at the grafics
pattern and solution. (Source: Salzburger Nachrichten,
9.1.2002). |
|
|
|
Generate
with GAM the parts, place them like the pattern and
put them together with menuitem Transform - translation .
Create an animation, in which the necessary translations run automatically and
export in VRML (option animate objects by turns ) ! |
|
First we
generate a raster (2D – Primitives –
Raster in the [xy]-plane: |
|
To animate the translations the check box animated must be
checked. After clicking OK a range variable w is definded automatically: |
|
For
further working up of the drawing there are available
4 formats of EXPORT. |
|
EMF |
Windows Metafile : ideal for implementing the drawing in text
editing software. You can transfer the drawing into
the Windows Clipboard by typing <strg><M>. |
DXF |
AutoCad
2D |
Bitmap |
Export of
the drawing as pixelgrafic |
JPG
|
Export of the drawing as jpg.file |
PNG | Export of the drawing as png.file |
STL | Export of the drawing as stl.file (3D - printer) |
VRML |
Virtual Reality Modeling Language |