.start
.related online license gui tips
Kontextsensitive Hilfe

Dieses Hilfesystem arbeitet kontextsensitiv. D.h. es stellt immer
gerade die Hilfeseite ein, die zum aktuellen Werkzeug gehrt. Man
kann das Fenster offen lassen und neben das Konstruktionsfenster
verschieben.

Oben ist eine Leiste, in der man zu verwandten Themen springen
kann. Man ffnet dazu die Liste der Themen oben rechts.

Mit den Knopf unten kann man Stichwrter suchen. Die Suchergebnisse
werden ebenfalls in der Liste oben angezeigt.

Nach einem Sprung zu einem anderen Thema kann man mit der Zurck-Taste
wieder einen Schritt zurck gelangen.

Viel Erfolg mit Z.u.L. wnscht

Ren Grothmann

.online
.related start tips
Hilfe im Browser

Die Homepage von Z.u.L. ist "www.z-u-l.de". Dort finden sich Hinweise
auf neue Versionen, Links auf Downloads, Demos, Tutorien und vieles
anderes.

Es gibt eine Diskussionsgruppe auf Yahoo. Ein Link befindet sich auf
der Homepage von Z.u.L.

Natrlich bin ich auch per EMail zu erreichen. Meine EMail-Adresse
findet sich auf meiner Homepage www.rene-grothmann.de

.license
.related online start
Lizenz von Z.u.L.

Z.u.L. ist freie Software unter der GPL (Gnu General Public License).
Man kann das Programm beliebig nutzen. Wenn das Programm verbreitet
wird, so muss mindestens sein Link auf die Homepage von Z.u.L.
weitergegeben werden.

Der Quelltext ist ebenfalls erhltlich. Alle genderten Quelltexte
mssen ebenfalls offen erhltlich bleiben. Auerdem muss stets
zumindest ein Link auf die Originalquellen mitgegeben werden.

Die gleiche Lizenz gilt fr die Dokumentation.

Selbstverstndlich darf mit Z.u.L. auch Geld verdient werden, etwa in
Form von Handbchern, Tutorien, Kursen und hnlichen Materialien.

.gui
.related iconbar mouse zoom online keyboard
Die Programmoberflche

Die groe Fensterflche zeigt natrlich die Konstruktion an. Der
gezeigte Ausschnitt kann mit den Pfeiltasten verschoben werden und mit
der +/- Taste vergrert bzw. verkleinert werden. Es gibt auerdem ein
Zoom-Werkzeug, das den Ausschnitt mit der Maus verndert. Das
Mausrad kann ebenfalls zum Vergrern und Verkleinern verwendet
werden. Mit der rechten Maustaste kann die Konstruktion verschoben
werden.

Oberhalb der Konstruktion befindet sich die Werkzeugleiste. Die Icons
zeigen so genannte Tool-Tips, wenn die Maus eine Weile ber Ihnen
stehen bleibt. Dadurch kann man sich die Funktion der Icons in
Erinnerung rufen. Die untere Zeile enthlt die Icons, die
Konstruktionsschritte erzeugen oder modifizieren, und die obere Zeile
enthlt hauptschlich Icons, die Konstruktionsoptionen und
Default-Einstellungen ndern.

Unter der Konstruktion befindet sich die Statusleiste, die fr
Textausgaben benutzt wird. Dort der nchste erwartete Schritt
angezeigt. Die Leiste wird im nicht-visuellen Modus durch eine
Eingabezeile ersetzt.

Links neben der Konstruktion kann die Liste der Objekte eingeblendet
werden. Die Art der Objekte, die angezeigt werden sollen, kann aus
einem Men ausgewhlt werden. Mit der linken Maustaste werden Objekte
ausgewhlt, mit der Strg-Taste und der Umschalt-Taste knnen mehrere 
Objekte ausgewhlt werden.
Mit einem Doppelklick werden die ausgewhlten Objekte ediert. Weitere
Optionen fr diese Liste stehen ber einen Klick mit der rechten
Maustaste zur Verfgung.

Die Objektliste kann in der Breite verndert werden. Klicken Sie dazu
auf den schmalen Rand rechts, und ziehen Sie die Maus nach rechts oder
links.

Z.u.L. hat auch ein Men, in dem sich die Werkzeuge nochmals finden.
Auerdem finden sich dort weitere Optionen, wie etwa das Speichern und
Laden von Dateien. Im Men findet man auch die Tasten, die die
Werkzeuge auswhlen.

.iconbar
.related restricted gui settings
Die Werkzeugleiste

Es gibt verschiedene Typen von Werkzeugen.

Werkzeuge, die Mausaktionen erwarten: Beispiele sind das
Punktwerkzeug, die Auswahl von Makroparametern oder auch das
Zoom-Werkzeug.

Werkzeuge, die Einstellungen fr neue Objekte ndern: Beispiele sind
die Farbe oder der Punkttyp.

Werkzeuge, die die Darstellung ndern: Beispiele sind der Schalter fr
das Gitter oder die Darstellung versteckter Objekte.

Werkzeuge, die eine Aktion auslsen: Beispiele sind das Lschen des
letzten Objektes oder das Setzen des Kommentars.

Fr die Konfiguration der Werkzeugleiste steht ein Menpunkt zur
Verfgung. Im angezeigten Dialog knnen alle Werkzeuge an- und
abgewhlt werden. Die abgewhlten Werkzeuge knnen im normalen
Modus trotzdem ber die Tastatur und ber das Men aufgerufen werden.

Die Werkzeugleiste kann so eingestellt werden, dass sie unter der
Konstruktion erscheint.

Die Leiste kann ein- oder zweizeilig sein. Falls die Leiste einzeilig
eingestellt wird, so werden nur die ntigsten Werkzeuge eingeblendet,
aber nur dann, wenn sie im Einstellungsdialog angewhlt sind.

Die Werkzeuge zeigen eine kurze Information, wenn die Maus ber Ihnen
verweilt. Wird dabei die Strg-Taste gedrckt, so erscheint bei den
Werkzeugen, die mit Strg-Taste anders funktionieren, eine andere
Information.

.restricted beginner
.related iconbar
Eingeschrnkte Werkzeugleiste

Es gibt zwei Einstellungen fr die Werkzeugleiste, eingeschrnkt und
nicht eingeschrnkt. Wenn auf die eingeschrnkte Werkzeugleiste
gewechselt wird, wird diese Leiste mit der Konstruktion abgespeichert
und beim Laden dem Anwender prsentiert. Man sollte diese Leiste also
so konfigurieren, dass sie diejenigen Werkzeuge enthlt, die man zur
Verfgung stellen will.

Es gibt einen Anfngermodus, der eine spezielle Werkzeugleiste whlt,
die viele Werkzeuge nicht enthlt. Auerdem wird die Vorschau auf
Punkte eingeschrnkt, damit der Anfnger nicht in die Irre gefhrt
wird. Man sollte Anfnger immer in diesem Modus arbeiten lassen.

.mouse
.related gui settings hide point circle move keyboard edit
Die Verwendung der Maus

Die linke Maustaste wird dazu benutzt, Objekte im Konstruktionsfenster
auszuwhlen. Die ausgewhlten Objekte werden rot angezeigt, bis die
Konstruktion komplett ist. Geraden und Kreise werden ausgewhlt, indem
man irgendwo auf die gezeichnete Linie klickt. Ausgefllte Objekte
knnen irgendwo auf ihrer Flche angeklickt werden, wenn dort kein
anderes Objekt im Wege ist.

Wenn die entsprechende Funktion nicht abgeschaltet ist, werden
verwendbare Objekte hervorgehoben, wenn die Maus ber die
Konstruktion fhrt. Dies erleichtert die Auswahl erheblich. Punkte,
die dabei auf Objekten oder als Schnittpunkte erzeugt wrden, werden
ebenfalls angezeigt.

Falls die Objektauswahl nicht eindeutig ist, so erscheint eine Liste
von mglichen Objekten. Aus dieser Liste kann ein Objekt durch
Doppelklick, oder durch Einfachklick und nachfolgenden Knopfdruck,
ausgewhlt werden. In der Liste erscheinen Punkte schwarz, Geraden
rot, Kreise blau und Winkel und andere Objekte grn.

Die rechte Maustaste dient zum Verschieben von Punkten, von Labels und
zum Einstellen von Objekt-Eigenschaften. Ein verschiebbarer Punkt kann
mit gedrckter rechter Maustaste gezogen werden. Wird er mit der
rechten Maustaste angeklickt, ohne dass er verschoben wurde, so
erscheint der Dialog zum Einstellen der Objekt-Eigenschaften. Auf die
gleiche Weise knnen andere Objekte verndert werden. 

Die Objektnamen knnen ebenfalls mit der rechten Maustaste verschoben
werden. Wenn ein Label mit der rechten Maustaste angeklickt wird, aber
nicht verschoben wird, so springt es an den Punkt zurck, an dem es
normalerweise liegen wrde. Wenn die Umschalt-Taste gedrckt ist,
kann der Name irgendwohin verschoben werden. Sonst bleibt er in der
Nhe des Objektes.

Wird die Strg-Taste und die Umschalttaste mit der rechten Maustaste 
verwendet, so wird das angeklickte Objekt versteckt. Ist das Werkzeug 
zum Verstecken aktiv, so versteckt die Umschalttaste und die Strg-Taste
das Objekt vollstndig.

Die Strg-Taste mit der rechten Maustaste zeigt den Dialog
fr Bedingungen fr Eigenschaften eines Objekts an.

Die Strg-Taste bewirkt bei manchen Werkzeugen in der Werkzeugleiste
auch eine nderung des Verhaltens.

Die rechte Maustaste kann auch verwendet werden, um den Tastaturfokus
auf das Konstruktionsfenster zu legen, falls dies nicht der Fall sein
sollte. Dazu klickt man mit der rechten Maustaste auf eine leere
Stelle in der Konstruktion und dann eventuell auf die oberste Zeile
der Makroliste.

.background
.related gui move htmlexport
Hintergrundbilder

Eine Option ist die Darstellung eines Bildes als Hintergrund. Ein
Hintergrundbild wird entweder aus der aktuellen Konstruktion erzeugt,
oder es wird von einer Datei geladen. In diesem Fall kann das
Hintergrundbild gekachelt, zentriert oder gestreckt dargestellt
werden. Gekachelte Hintergrundbilder dienen als Verzierung, um etwa
Papierstrukturen nachzuahmen. Sie werden beim Anlegen neuer
Konstruktionen nicht gelscht und auch nicht mit der Konstruktion
abgespeichert.

Man kann auch Bilder auf Applets als Hintergrund verwenden, um auf
Ihnen Konstruktionen oder Animationen darzustellen. In diesem Fall
verwendet auch der HTML-Export das Bild als Hintergrund, und die Gre
des Applets wird gleich der Bildgre gewhlt. Man muss das
Bild in das Verzeichnis, in dem sich "zirkel.jar" befindet, publizieren.

.properties
.related edit colors hide mouse transparent point fixedangle replay animatebreak expressionsyntax latex
Objekteigenschaften

Der Dialog zur Einstellung von Objekteigenschaften ffnet sich nach
einem Klick mit der rechten Maustaste auf das Objekt.

Alle Objekte haben folgende Eigenschaften.

 - Name
 - Beschreibung
 - Einheit
 - Farbe
 - Dicke
 - Versteckt oder nicht versteckt
 - Namensanzeige
 - Wertanzeige
 - Groer Font oder fetter Font
 - Hintergrund oder Vordergrund
 - Transparenz
 - Haltepunkt
 
Zum Namen ist zu sagen, dass nur die Zeichen vor einer "~" in der
Konstruktion angezeigt werden, was doppelte Namensanzeigen ermglicht.
Auerdem knnen die griechischen Buchstaben als \a, \A etc. im Namen
verwendet werden. Der Name darf fast beliebige Zeichen enthalten.
Man kann beliebige Unicodezeichen mit \0XXXX kodieren, wobei XXXX
eine hexadezimale Zahl ist.

Der im Display dargestellte Namen (Alias) muss nicht der interne Namen sein.
Dies ist vor allem ntzlich, wenn der angezeigt Name Latexcode ist.
In diesem Fall kann man LaTeX-Ausdrcke verwenden oder auch Ausdrcke,
die durch %...% eingeschlossen sind und zur Darstellung ausgewertet werden.  
Ausdrcke der Form %=s% ergeben den aktuellen Namen von s, und Ausdrcke der
Form %~s% geben die Gleichung von s. %+...% erzwingt das Vorzeichen.


Die Beschreibung wird normalerweise automatisch erzeugt. Sie kann aber
gendert werden. Wir sie vom Benutzer gendert, so bleibt sie fest,
bis der Benutzer eine leere Beschreibungszeile eingibt.

Einige Objekte haben eine Gre und ein Feld fr eine Einheit. Man
kann die Gre nur fr fixierte Objekte ndern. Die Einheit wird
hinter der Gre ausgegeben und kann aus irgendeinem Text bestehen.
Fr Winkel verwendet man das Gradsymbol . Namens- und Wertanzeige
kann kombiniert werden, was z.B. zur Anzeige "s=3" fhrt. Falls der
Name mit "_" endet, wird dieses "_" entfernt und das "=" entfllt.

Die Farbe und Dicke erklren sich weitgehend selbst. Die Dicke wirkt
allerdings verschieden je nach Objekt. Man probiert die Wirkung am
besten aus. Objekte knnen versteckt sein oder auch vollstndig
versteckt. In diesem Fall erreicht man den Einstellungsdialog nur noch
ber die Objektbeschreibung. Objekte knnen im Hintergrund sein oder
nicht. Gefllte Objekte werden normalerweise in den Hintergrund
geschoben.

Andere Objekte knnen gefllt dargestellt werden. Die Transparenz kann
in diesem Fall an- und abgeschaltet werden.

Haltepunkte sind fr den Wiedergabemodus wichtig und fr die Animation
von Haltepunkten. Vewrsteckende Haltepunkte werden mit der
Umschalttaste gesetzt.

Punkte haben einen Stil, der die Darstellung bestimmt, und Strecken
knnen als Pfeile dargestellt werden.

Man beachte auch die Knpfe auf der unteren Leiste des Dialogs. Punkte
haben dort z.B. einen Schalter, mit dem sie sich an ein Objekt binden
lassen. Feste Kreise und Winkel haben einen Schalter, mit dem sich
Punkte zur Grenfestlegung auswhlen lassen.

.point
.related boundedpoint intersection settings mouse properties selfreference
Punkte

Ein Punkt kann in Z.u.L. auf verschiedene Weisen entstehen. Mit dem
Punkt-Werkzeug erzeugt man verschiebbare Punkte, die Basisobjekte der
Konstruktion sind. Der Punkt wird einfach durch Klicken auf die
Konstruktion erzeugt. 

Trifft man den Schnittpunkt von zwei Kreisen oder Geraden, so wird
dieser Schnittpunkt erzeugt. Trifft man eine Gerade, eine Strecke,
einen Strahl oder einen Kreis, so wird ein Punkt erzeugt, der an
dieses Objekt gebunden ist. In beiden Fllen erscheinen mglicherweise
Rckfragen, die sich aber abstellen lassen. In der Vorschau ist
erkennbar, welche Art von Punkt erzeugt wird.

Verschiebbare Punkte knnen am aktuellen Ort fixiert werden. Im
Eigenschaftsdialog fr Punkte existiert ein entsprechendes Hkchen.
Beide Koordinaten knnen durch arithmetische Ausdrcke festgelegt
werden. Wird beim Erzeugen des Punktes die Umschalttaste gedrckt, so
wird der Punkt fixiert. Whlt man mit gedrckter Umschalttaste einen
Punkt aus, so wird ein neuer fixierter Punkt genau an dieser Stelle
erzeugt. Dies kann zum Markieren von Positionen genutzt werden.

Punkte knnen verschoben werden, obwohl sie durch Ausdrcke fixiert
sind, wenn die Ausdrcke sich auf den Punkt selbst beziehen und auf
sonst kein anderes Objekt (@-Bezge zhlen hier nicht). In diesen
Fall wird nach dem Verschieben die Position des Punktes neu berechnet
und korrigiert. Die Neuberechnung erfolgt einmalig. Eine Iteration
ist nicht vorgesehen. Mit diesem Trick kann man die Bewegung von
Punkten einschrnken.

Punkte knnen wie andere Objekte auch, direkt beim Erzeugen verschoben
werden. Dabei wird der Name und der Ort des Punktes kurzzeitig
angezeigt, wenn diese Option nicht abgeschaltet ist.

Siehe: Selbstreferenz

.boundedpoint
.related point line mouse properties
Gebundene Punkte

Diese Punkte sind an eine Gerade, eine Strecke, einen Strahl oder
einen Kreis gebunden. Das bedeutet, dass der Punkt beim Verschieben
immer auf dem Objekt bleibt. Es gibt ein spezielles Werkzeug zur
Erzeugung von gebundenen Punkten. Man kann aber einfach das
Punktwerkzeug verwenden und auf einen Kreis oder eine Gerade klicken.

Punkte knnen vom Objekt gelst werden, oder nachtrglich an ein
Objekt gebunden werden. Dazu verwendet man den Eigenschaftsdialog von
Punkten. Falls der Knopf "Binden" lautet, so wird der Dialog
geschlossen, und es wird die Auswahl eines Objektes gefordert.

Die Bindung kann auf zweierlei Arten erfolgen. Der Punkt wird
entweder jedes Mal neu auf das Objekt projiziert, oder er
wird in seiner relativen Lage auf dem Objekt festgehalten. Die erste
Option wird durch Drcken der Umschalttaste bei der Auswahl des
Kreises oder der Geraden aktiviert, oder durch Entfernung der
Fixierung im Eigenschaftsdialog.

Ein Punkt auf einem Objekt ist kein freier Punkt. Strecken mit solchen
Endpunkten knnen nur in der Lnge fixiert werden, wenn beide
Endpunkte auf der Strecke liegen.

Auch hier wird eine Strecke nicht wie eine Gerade behandelt. Der Punkt
liegt immer innerhalb der Strecke.

.line ray
.related point parallel properties
Geraden und Strahlen

Diese Objekte hngen alle von zwei Punkten ab. Bei der Konstruktion
mssen daher zwei Punkte ausgewhlt werden. 

Die Unterschiede zwischen diesen Objekten beziehen sich nicht nur auf
die Darstellung. Auch die Auswahl mit der Maus ist nur auf dem
gezeichneten Teil mglich. Darber hinaus wird zum Beispiel ein Lot
auf einen Strahl ungltig, wenn er den Strahl nicht mehr trifft. Auch
Schnittpunkte mit Strahlen sind nur gltig, wenn sie tatschlich auf
den Strahl fallen. Der Strahl wird also nicht als Gerade behandelt.

Geraden knnen partiell dargestellt werden. In diesem Fall werden sie
nur zwischen den Definitionspunkten und ein wenig darber hinaus
gezeichnet.

Siehe: Strecken

.segment fixedsegment
.related point parallel properties
Strecken

Die Lnge von Strecken lsst sich fixieren, wenn zumindest einer der
Endpunkte ein verschiebbarer Punkt ist. Dieser Punkt wird dann lngs
der Strecke so verschoben, dass die gewnschte Lnge angenommen wird.
Die Lnge kann ein beliebiger berechneter Ausdruck sein. Das spezielle
Werkzeug fr Strecken mit fester Lnge erzeugt beim zweiten Klick
immer einen freien Punkt.

Das Werkzeug fr feste Strecken ist per Default ausgeblendet, da feste
Strecken auch ber normale Strecken erzeugt werden knnen, die
nachtrglich fixiert werden, oder bei denen die Umschalttaste beim
erzeugen des zweiten Punktes gedrckt wird.

Strecken knnen die Lnge Null haben. Allerdings werden dann Lote und
Parallelen zur Strecke ungltig.

Siehe: Geraden und Strahlen

.circle circle3
.related reorder expressionsyntax properties point transparency fixedcircle
Kreise

Ein Kreis entspricht einem Konstruktionsschritt mit dem Zirkel. Dabei
gibt es den einfachen Fall, bei dem der Zirkel in einem Mittelpunkt
eingestochen wird, und der Kreis durch einen zweiten Punkt geht.
Dieses Werkzeug erwartet demnach auch die Auswahl von zwei Punkten.

Der andere Kreis entspricht einem Zirkel, der seine Gre behlt, wenn
er vom Zeichenblatt entfernt wird. In diesem Fall kann man den Radius
zwischen zwei Punkten messen und dann den Kreis um einen anderen Punkt
mit diesem Radius zeichnen.

Kreise knnen auch nur in den wesentlichen Teilen sichtbar sein, was
die bersichtlichkeit der Konstruktion betrchtlich erhht. Kreise
knnen ausgefllt werden. Auerdem knnen sie als Kreisbogen zwischen
zwei gegebenen Punkten dargestellt werden. Die beiden Punkte werden
mit der Maus ausgewhlt, nach dem Knopf "Setze Zeichengrenzen" im
Eigenschaftsdialog gewhlt wurde.

Siehe auch: Kreise mit festem Radius

.fixedcircle
.related reorder expressionsyntax properties point transparency
Kreise mit festem Radius

Es gibt Kreise mit festem Radius, die keine Radiuspunkte haben. Man
erzeugt diese Form, indem man beim Festlegen des Radiuspunktes die
Umschalttaste drckt oder das Werkzeug fr feste Kreise whlt. Der
zweite angeklickte Ort dient als Ausgangsgre des Kreises. Es ffnet
sich der Eigenschaftsdialog und man kann einen Ausdruck als gewnschte
Gre eingeben. Der Ausdruck kann wieder ein beliebiger arithmetischer
Ausdruck sein. Der feste Kreis kann beim Erzeugen mit der Maus in der
Gre verndert werden. In diesem Fall ffnet sich der
Eigenschaftsdialog nicht.

Der Radius von Kreisen mit festem Radius kann durch Auswahl von zwei
Punkten festgelegt werden. Dazu whlt man im Eigenschaftsdialog den
Knopf "Gre festlegen ..." und klickt zwei Punkte A und B an. Der
Radius wird dann gleich dem Abstand von A und B. Es ist zu beachten, dass
nur Punkte verwendet werden knnen, die vor dem Kreis konstruiert
wurden.

.intersection
.related point properties selectintersection
Schnitte

Das Schnittwerkzeug erzeugt Schnitte zwischen Geraden, zwischen
Kreisen, sowie zwischen Funktionen und automatischen Ortslinen. 
Schnitte knnen auch automatisch erzeugt werden (evtl. nach Rckfrage), 
wenn die Eingabe eines Punktes verlangt wird. 
Die Vorschau zeigt dabei die beiden geschnittenen Objekte an.

Es ist zu beachten, dass beide Schnittpunkte zwischen Kreisen und Kreisen
und Geraden simultan erzeugt werden, wenn die Objekte nacheinander mit
dem Schnittwerkzeug gewhlt werden. Bei Funktionen und Ortslinien
wird jeweils nur ein Schnitt erzeugt, selbst wenn es mehrere gibt.
Der Schnittpunkt lsst sich an einen anderen Schnittpunkt ziehen.

Man kann auch Schhnitte zwischen parametrisierten Kurven, Funktionen,
Kegelschnitten und automatischen Ortslinien erzeugen. Zu beachten
ist allerdings, dass diese Schnitte lnger zur Berechnung bentigen.

Das Schnittwerkzeug ist normalerweise ausgeblendet, da es sich ja
durch das Punktwerkzeug ersetzen lsst.

Was Schnitte angeht, so werden eine Strecke und ein Strahl nicht
gleich einer Geraden behandelt. Ein Schnittpunkt mit einer Strecke ist
nur gltig, wenn er auf der Strecke liegt.

Siehe: Schnittauswahl

.selectintersection
.related intersection objecttracker
Schnittauswahl

Bei Schnitten, die zwei Punkte erzeugen, besteht das Problem, dass
mglicherweise zur weiteren Konstruktion nur einer der beiden Punkte
tauglich ist. Die Reihenfolge der Schnittpunkte hngt zwar
vorhersagbar von den Ausgangsobjekten ab und springt nicht hin und
her, aber dennoch sind manche Konstruktionen nur lsbar, wenn man
einen der beiden Punkte durch die zustzliche Eigenschaft auszeichnen
kann, verschieden von einem vorgegebenen Punkt oder nher bei einem
gegeben Punkt zu sein. Als Anwendung ist es auch mglich, Schnitte
nahe zu sich selbst zu whlen. In diesem Fall verhlt sich die
Schnittauswahl stetig mit der Bewegung.

Dazu kann man den Namen des Punktes kann man im Eigenschaftsdialog von
Schnitten eintragen, der weg vom Schnittpunkt sein soll oder in der
nhe des Schnittpunkts liegen soll. 

Auerdem ist es mglich, den Schnittpunkt immer zu wechseln, wenn er
ungltig ist. Genau wie beim automatischen Ortslinienobjekt durchluft
die Konstruktion dann alle mglichen Zustnde.

Falls der andere Schnittpunkt zweier Kreise schon existiert, so
erzeugt Z.u.L. automatisch einen Schnittpunkt, der immer vom
existierenden verschieden ist. Dies lst viele Probleme automatisch.

Im Eigenschaftsdialog von Schnitten findet man einen Knopf, mit dem
sich der Bezugspunkt fr die Auswahl in der Konstruktion whlen lsst.

Siehe: Schnitte

.parallel plumb midpoint
.related line point properties
Parallelen, Lote und Mitten

Dies sind einfach Werkzeuge zur Abkrzungen von den komplizierteren
Konstruktionen mit Zirkel und Lineal. Parallelen und Lote
sind Geraden, Mitten sind Punkte.

.move
.related circle angle background mouse
Objekte Bewegen

Dieses Werkzeug kann alternativ zur rechten Maustaste benutzt werden,
um ein Objekt zu verschieben. Es muss dann natrlich die linke
Maustaste zum Verschieben verwendet werden. Falls die Objektauswahl
zum Bewegen nicht eindeutig war, erscheint ein Auswahldialog. Im
nchsten Versuch wird dann das gewhlte Objekt benutzt.

Beim Auswhlen des Werkzeugs oder beim Zurcksetzen mit der ESC-Taste
blinken kurz alle beweglichen Objekte der Konstruktion auf.

Mit der Umschalttaste knnen mehrere Punkt gleichzeitig bewegt werden.
Dazu lsst man bei der Auswahl des letzten Punktes die Umschalttaste
los.

Wenn beim Bewegen die Umschalttaste gehalten wird, wird die Bewegung
eingeschrnkt, wenn ein Schnitt ungltig wird. In Applets kann dies
durch den Parameter "restrictedmove" per Default aktiviert werden.

Hlt man whrend des Bewegens die Strg-Taste gedrckt, so bleibt
der anfngliche Zustand der Konstruktion whrend der Bewegung sichtbar.

Auerdem kann mit der Strg-Taste die Fixierung von festen Kreisen und
Winkeln aufgehoben werden.

.tracker
.related point animate mouse objecttracker
Ortslinien und Einhllende

Dieses wichtige Werkzeug erzeugt Spuren von berechneten Punkten. Man
whlt fr eine einfache Ortslinie zunchst einen Punkt aus, dessen
Ortslinie zu zeichnen ist, und kann dann einen beliebigen
verschiebbaren Punkt oder ein anderes verschiebbares Objekt mit der
linken Maustaste bewegen.

Es knnen auch mehrere Punkte ausgewhlt werden, indem die
Umschalttaste beim ersten Punkt festgehalten wird. Dann werden auch
mehrere Ortslinien gleichzeitig gezeichnet.

Die Ortslinie wird nur so lange gezeichnet, bis ein neues Werkzeug
ausgewhlt wird, oder das Ortslinienwerkzeug erneut ausgewhlt wird.

Wird statt eines Punktes eine Gerade ausgewhlt, so entsteht eine
Hllkurve. Das ist eine Kurve, zu der alle Geraden Tangenten sind,
die bei der Bewegung entstehen. Auch hier knnen mehrere Objekte
gleichzeitig verfolgt werden, auch Punkte und Geraden gemeinsam.

Ortslinien werden abgespeichert. Beim Laden einer Konstruktion
wird die Ortslinie automatisch wieder angezeigt. Falls sie animiert
war, wird sie wieder animiert sein, sonst nicht. Die Ortslinie ist
allerdings kein Konstruktionsobjekt, sondern wird separat im
Konstruktionskopf gespeichert.

Siehe: Automatische Ortslinien

.objecttracker
.related point animate mouse tracker
Automatische Ortslinien

Bei der automatischen Ortslinie wird der bewegte Punkt auf einem
Kreis, einer Geraden, einer Strecke oder einem Strahl automatisch
bewegt. Also ist zustzlich zu den Eingaben fr eine normale
Ortslinie die Eingabe eines solchen Objektes notwendig. Zu beachten ist,
dass das Objekt, auf dem der Punkt bewegt wird, nicht von ihm abhngen
darf. Statt eines Objekts und des Punkts, der darauf laufen soll, kann
auch gleich ein Punkt gewhlt werden, der auf einem Objekt gebunden
ist, oder ein Schieberegler fr Ausdrcke.

Auch hier knnen mehrere Punkte verfolgt werden. Allerdings steuert
der erste Punkt die Erzeugung der Ortslinie.

Automatische Ortslinien versuchen, alle Zustnde der Konstruktion zu
durchlaufen. Dazu macht der bewegte Punkt kehrt, wenn er ungltig
wird. Schnitte wechseln dabei ihre Orientierung.

Die automatische Ortslinie wird neu berechnet, wenn ein Ausgangspunkt
verschoben wurde. Dazu verschiebt man den Ausgangspunkt mit der
rechten Maustaste.

Automatische Ortslinien werden zunchst animiert. Nach einem Klick
luft die Animation ohne Ortslinie ab, und nach einem
weiteren Klick wird die Ortslinie ohne Animation gezeichnet. Die
Animation lsst sich durch Drcken der Umschalttaste zusammen mit den
Cursortasten links oder rechts beschleunigen oder bremsen.

Ortslinien als Objekte

Automatische Ortslinien knnen auch als Objekte in die Konstruktion
bernommen werden. Dazu gibt es einen speziellen Menpunkt. Man muss
wissen, dass das Neuzeichnen erheblich verzgert wird, wenn die
Konstruktion Ortslinien enthlt!

Diese Art von Orslinien haben einen eigenen Einstellungsdialog und
erben nicht einfach die Eigenschaftes des erzeugenden Punktes.
Automatische Ortslinien knnen auerdem gefllt werden.

Automatische Ortslinien in Konstruktionen knnen mit anderen Objekten
geschnitten werden und man kann Punkte auf Ihnen fixieren. Wenn
mehrere Schnitte existieren, wird allerdings immer nur einer erzeugt.
Durch Ziehen kann der Schnittpunkt gewechselt werden.

Automatische Tracks in der Konstruktion knnen fixiert werden. Dann werden
sie nur neu berechnet, wenn ihr Objektdialog aufgerufen wurde. Das
spart enorm Rechenzeit.

Siehe: Ortslinien und Einhllende

.animate
.related circle line
Animation

Damit lassen sich Punkte animieren, so dass sie Strecken oder Kreisen
folgen. Man whlt zuerst den zu animierenden Punkt aus, dann die
Strecken oder Kreise, auf denen er wandern soll. Die Auswahl wird
dadurch abgeschlossen, dass man eine schon gewhlte Strecke erneut
eingibt. Die Animation luft dann, bis man ein Werkzeug whlt oder auf
eine leere Stelle klickt.

Die Laufrichtung auf Kreisen ist normalerweise gegen Uhrzeigersinn.
Sie kann aber durch Klicken mit der Umschalttaste gedreht werden. Dies
fhrt auch dazu, dass der animierte Punkt auf Kreissegmenten und auf
Strecken hin- und zurckluft.

Animationen werden gespeichert und beim Laden automatisch ausgefhrt.

.angle
.related circle properties defaults fixedangle
Winkel

Einfache Winkel sind lediglich Verzierungen. Mit ihnen kann nichts
konstruiert werden. Winkel werden durch drei Punkte ABC bestimmt,
wobei B wie blich den Scheitel des Winkels bezeichnet. 

Winkel sind normalerweise immer kleiner als 180 Grad. Die
Eingabereihenfolge der Schenkelpunkte spielt keine Rolle. Dieses
Verhalten kann fr jeden Winkel im Eigenschaftsdialog oder
global als Voreinstellung gendert werden.

Winkel knnen den Namen, die Gre oder beides anzeigen. Da im kleinen
Winkelraum relativ wenig Platz ist, ist es mglich, den Winkel in drei
verschiedenen Gren zu zeichnen. Die dritte Gre erlaubt es,
Kreisausschnitte zu zeichnen, weil der Winkelbogen in diesem Fall
immer beim Schenkelpunkt A gezeichnet wird.

Winkel knnen auch griechische Namen haben. Leider ist es aber so,
dass nur das Java von Sun und das entsprechende Browser-Plugin diese
Namen auch richtig anzeigt. 

Siehe: Feste Winkel

.fixedangle
.related circle reorder expressionsyntax properties defaults angle
Feste Winkel

Feste Winkel haben keinen zweiten Schenkelpunkt, sondern statt dessen
eine fixierte Gre. Der Winkel verhlt sich dann wie ein Strahl. Mit
diesem Strahl kann weiter konstruiert werden. Man erzeugt solche
Winkel durch Festhalten der Umschalttaste beim zweiten Schenkelpunkt,
oder mit Hilfe des Werkzeugs fr feste Winkel. Es ffnet sich der
Eigenschaftsdialog, und man kann einen Ausdruck fr den gewnschten
Winkel eingeben. 

Die Gre von festen Winkeln kann durch Anklicken dreier Punkte
festgelegt werden. Dazu whlt man im Eigenschaftsdialog des Winkels
den Knopf "Winkel festlegen ..." und klicken drei Punkte A, B und C
an. Der Winkel wird dann so gro wie der Winkel ABC. Man muss
beachten, dass nur Punkte verwendbar sind, die vor dem festen Winkel
konstruiert wurden. 

Feste Winkel knnen im Einstellungsdialog invertiert werden. Beim
Erzeugen werden Winkel, die durch die Voreinstellung auf 180 begrenzt
sind, automatisch invertiert, wenn dies notwendig ist. Also muss beim
Erzeugen nicht auf mathematisch positive Orientierung geachtet werden.

Siehe: Winkel

.area
.related point properties background
Gefllte Polygone

Mit diesem Werkzeug kann man ausgefllte Flchen erzeugen, die durch
Streckenzge begrenzt sind. Verlangt wird die Eingabe einer Reihe von
Punkten. Zum Abschluss gibt man den letzten Punkt erneut ein.

Die Randstrecken werden versteckt, wenn das Polygon in dnner
Darstellung angezeigt wird.

.expression
.related expressionsyntax fixedangles fixedcircles point properties
Berechnete Ausdrcke

Z.u.L. bietet die Mglichkeit ber normale Konstruktionen hinaus
berechnete Konstruktionen zu erzeugen. Dazu werden arithmetische
Ausdrcke verwendet, die im Prinzip berall erlaubt sind, wo die
Eingabe einer Gre erforderlich ist. Es lassen sich damit Koordinaten
von Punkten setzen, Lngen von Strecken, Radien von Kreisen und Winkel
festlegen. 

Auerdem knnen die Ausdrcke zur Anzeige von berechneten Gren in
der Konstruktion dienen. Dazu dient das Werkzeug fr berechnete
Ausdrcke. Nach der Wahl eines Platzes, an dem der Ausdruck stehen
soll, wird automatisch der Einstellungsdialog angezeigt. Man muss
dort nur noch den gewnschten Ausdruck eingeben.

Ausdrcke knnen mit einer Erklrung versehen werden. Im
Eigenschaftsdialog lsst sich die Anzeige der Erklrung anschalten.

Ausdrcke knnen mit einem Schieber verstellt werden. Der Benutzer kann
damit leicht Werte fr den Ausdruck einstellen. Schieber haben minimale
und maximale Werte, die sie im Eigenschaftsdialog einstellen knnen.

Angezeigte Ausdrcke knnen wie blich mit der rechten Maustaste an
einen anderen Platz verschoben werden. Zum Verstellen des Schiebers
kann ebenfalls dir rechte Maustaste verwendet werden.

Man kann auch LaTeX zur Ausgabe von Ausdrcken verwenden. Dazu umgibt
man den Text mit $-Zeichen.

.expressionsyntax
.related expression reorder point fixedcircle fixedangle
Syntax fr Ausdrcke

Name 
 Beispiel 
 Beschreibung 
 
+, -, *, /,^ 
 3.5*3+3/(4-5^2) 
 Elementarer arithmetischer Ausdruck. ^ steht fr die Potenz. 
 
Objektname 
 AB/CD 
 Der Name von Strecken, Kreisen und Winkeln berechnet deren Lnge, Radius bzw. Gre. 
Enthlt der Name ein Leerzeichen, muss er in "" eingeschlossen werden. 
Es knnen auch andere Ausdrcke verwendet werden. Das aktuelle Objekt darf nicht
von einem im Ausdruck verwendeten Objekt abhngen.
Man kann fr Spezialzwecke ein @ vor den Namen hngen. Dann wird das Objekt immer mit
seien Namen gesucht. In diesem Fall funktioniert der Ausdruck nicht
in Makros.
Falls das Objekt nicht gefunden wird, gibt es eine Fehlermeldung.
 
Funktion 
 sin(a) 
 Diverse mathematische Funktionen (siehe unten) 

Benutzerfunktion
  f(a)
  Auswertung einer Benutzerfunktion an der Stelle a
 
Pi 
 pi 
 Die Konstante Pi. 
 
x,y 
 x(P),y(P),z(P)
 X- und y-Koordinaten von Punkten, oder Z-Wert.
 
d 
 d(P,Q) 
 Abstand der Punkte P und Q.
 
d 
 d(x) 
 nderungen von x, bei Punkten Bewegung und bei Winkeln Grennderung.
 
if
 if(e,e1,e2)
 Gibt e1 zurck, wenn e gltig ist, sonst e2. Wenn allerdings e ein logischer Ausdruck ist, so wird e1 zurckgegeben, wenn e wahr ist, sonst e2. 

sum
 sum(x,e)
 Summiert x auf. Die Summe wird zurckgesetzt, wenn e negativ oder ungltig ist.
 
a 
 a(A,B,C) 
 Gre des Winkels ABC (Scheitel in B). 
 
scale
 scale(x,a,b)
 Gibt die relative Lage von x in [a,b) zurck, wenn x in diesem Intervall liegt. 
Sonst wird der Ausdruck ungltig.

valid,invalid 
 valid,invalid 
 Konstanten, die einfach 0 bzw. ungltige Ausdrcke zurck geben. 

&& 
 x<3 && y<3 
 Logisches Und. Die logischen Funktionen geben 0 zurck, wenn sie
nicht wahr sind, sonst 1. 
 
|| 
 x<3 || y<3 
 Logisches Oder. 

! 
 ! (x<3 && y<3) 
 Logisches Nicht. 

>, >=, <, <=, ==, ~= 
 x<3 
 Vergleiche. "~=" bedeutet "ungefhr gleich", d.h. gleich bis auf 10^(-10). 

integrate
 integrate(f,a,b)
 integrate(f)
 Integriere die Funktion f von a bis b mit der Rombergmethode.
f muss ein Funktionsobjekt (evtl. versteckt) sein. 
Benutzt wird die y-Koordinate von f. integrate(f) berechnet
die Riemann-Summe fr punktweise Kurven, die Trapezregel
fr andere Funktionen und die berstrichene Flche fr
parametrisierte Kurven. integrate(f) funktioniert auch fr
automatische Ortslinien in der Konstruktion.

length
 length(f)
 Berechnet die Lnge einer paramtrisisierten Kurve oder einer
 automatischen Orslinie in der Konstruktion.

zero
 zero(f,a,b)
 Sucht die Nullstelle von f zwischen a und b. f(a) und f(b) mssen verschiedene
Vorzeichen haben. Verwendet wird die Sekantenmethode oder eine
Intervallschachtelung.

diff
 diff(f,x)
 Berechnet eine Approximation der Ableitung von f in x.

min,max
 min(f,a,b)
 Berechnet den Punkt, in dem das Minimum (Maximum) von f zwischen a und b angenommen
wird.

this
 x(this)
 Bezeichnet das Obkekt, das den Ausdruck enthlt.

windoww,windowh,windowcx,windowcy
 Berechnet die Gre und das Zentrum des dargestellten Bereiches.
 
simulate
 simulate(e,x,f)
 Setzt den Ausdruck e gleich x, berechnet die Konstrukion neu und gibt den Wert von
f zurck. Jeweils nur eine dieser Simulationen kann zur selben Zeit aktiv sein!
Fr e kann ein Ausdruck, ein fester Winkel oder ein fester Kreis eingesetzte werden.

Es knnen die blichen mathematischen Funktionen abs,
sign, sin, cos, tan, arcsin, arccos, arctan, sqrt, exp und log
verwendet werden. Darber hinaus gibt es round, ceil und floor zum
Runden auf ganze Zahlen. angle180 und angle360 sind Spezialfunktionen,
die Winkel so umrechnen, dass sie zwischen 0 und 180 bzw. 360 liegen.
Die Funktionen sin und cos arbeiten mit Grad. Zum Umrechnen verwendet
man deg(x) und rad(x).

.latex
.related text properties
Latex-Code

Latex-Code kann in Textobjekten und in Namen von Objekten vorkommen.
Dazu wird der Code in $ eingeschlossen. Zur Darstellung verwendet
Z.u.L. HotEqn. Wir knnen hier nur einen berblick ber die
Syntax geben. Eine genaue Definition des untersttzten Latex-Codes
finden Sie in der HTML-Dokumentation.

Zunchst werden griechische Buchstaben (\alpha,\beta) untersttzt.
Dann natrlich Hoch- und Tiefstellung (x^y, x_n) und Brche
(\frac{1}{x} oder auch \dfrac). Auerdem Summen, Integrale und Limiten
(\sum_{n=1}^\infty, \int_a^b). Wichtig sind vielleicht auch Akzente
(\hat{x},\overline{x}). Speziell sind \dollar und \percent definiert.

Matrizen werden auch untersttzt (\begin{array}{cc}3&4\\5&6\end{array}).
Dabei sind dann auch groe Klammern ntzlich (\left[ \right]).

.text
.related replay comment properties latex
Text

Damit kann ein beliebiger mehrzeiliger Text in die Konstruktion
eingefgt werden. Bei der Definition wird ein Fenster geffnet, in dem
der Text eingegeben werden kann. In diesem Fenster ist ein Schalter
enthalten, mit dem man den normalen Eigenschaftsdialog erreicht. Dort
lassen sich Texte an eine Position fixieren.

Texte knnen formatiert werden. Und zwar knnen ganze Zeilen fett
oder gro oder beides dargestellt werden. Dazu stellt man der Zeile
*, ** oder *** voran. Auerdem knnen Zeilen Latex-Code enthalten.
Solche Zeilen werden in $ eingeschlossen. Text kann auch Ausdrcke
enthalten, die in % eingeschlossen werden. Diese Ausdrcke werden
ausgewertet und statt dessen wird das Resultat dargestellt. Ausdrcke
der Form %=s% ergeben den aktuellen Namen von s, und Ausdrcke der
Form %~s% geben die Gleichung von s. %+...% erzwingt das Vorzeichen.

Versteckte Texte werden whrend der Wiedergabe mit dem Rekorder
angezeigt. Damit ist es mglich einzelne Konstruktionsschritte zu
kommentieren. Die Kommentare erscheinen nur an der Stelle, an der sie
definiert sind. Beim Verwenden von Unterbrechungspunkten ist es
ntzlich, diese Punkte hinter den versteckten Texte zu erzeugen.

.quadric
.related properties point transparent
Kegelschnitte

Kegelschnitte (Quadriken) sind Nullstellenlinien von Gleichungen
zweiten Grades in zwei Variablen x und y. Da es sechs unabhngige
quadratische Funktionen (x^2, y^2, x*y, x, y, 1) gibt, gengen fnf
Punkte, einen Kegelschnitt zu definieren, der durch diese Punkte
verluft. Das Programm kann Kegelschnitte berechnen und anzeigen.

Zur Eingabe von Quadriken ist einfach die Auswahl von 5 Punkten ntig.

.hide
.related construction properties mouse
Versteckte Objekte

Mit dem Werkzeug zum Verstecken und Anzeigen lsst sich der Status von
Objekten von angezeigt auf versteckt und umgekehrt ndern. Man kann
versteckte Objekte natrlich nur dann anwhlen, wenn man die Option
angeschaltet hat, die alle versteckten Objekte sichtbar macht.

Es ist auch mglich, fr ein einzelnes Objekt den
Status zum Verstecken in seinem Eigenschaftsdialog einzustellen.

Auerdem kann durch Anklicken mit der rechten Maustaste bei gehaltener
Strg-Taste und Umschalttaste das Objekt angezeigt oder versteckt werden, 
auch wenn ein anderes Werkzeug ausgewhlt ist.

Wenn beim Verstecken eines Objektes die Umschalttaste gedrckt ist, so
wird dieses Objekt komplett verborgen. Es kann nur dadurch wieder
sichtbar gemacht werden, dass sein Eigenschaftsdialog ber die
Konstruktionsbeschreibung aufgerufen wird, und dort die Sichtbarkeit
eingeschaltet wird.

Man kann auch alle Duplikate von Objekten mit einem Schlag verstecken.
Dazu hlt man die Strg-Taste fest, whrend man das Werkzeug zum
Verstecken anklickt, oder man benutzt den entsprechenden Menpunkt. Es
ist dann nur das jeweils letzte Duplikat sichtbar.

.rename
.related properties
Alphabetisch Umbenennen

Mit diesem Werkzeug werden Strecken automatisch in a,b,c, Punkte in
A,B,C und Winkel in \a,\b,\c umbenannt, sofern diese Namen in der
Konstruktion noch nicht vergeben wurden. Es wird immer der erste freie
Buchstabe verwendet.

Bentigen Sie den Namen a doppelt, so knnen Sie "a~1" als Namen
fr ein Objekt verwenden, was als "a" angezeigt wird. Generell werden
alle Zeichen ab einer "~" nicht angezeigt.

Mann kann auch erzwingen, dass die angeklickten Punkte A, B, C genannt
werden, obwohl diese Buchstaben schon einmal vergeben wurden, indem
man die Umschalttaste festhlt. In diesem Fall wird der Buchstabe
ausgetauscht, wenn er in der Konstruktion schon einmal vorhanden war.
Um von vorne zu beginnen, muss man das Werkzeug erneut auswhlen, oder
die Esc-Taste drcken.

.delete undo back
.related construction
Objekte Lschen

Mit Hilfe des Schalters zum Lschen von Objekte ist es mglich, das
letzte konstruierte Objekt zu lschen. Dabei werden zustzlich alle
versteckten Objekte gelscht, so dass das vorletzte nicht versteckte
Objekt das letzte Objekt wird. Falls allerdings die Option zum
Anzeigen aller versteckten Objekte eingeschaltet ist, wird nur das
letzte Objekt gelscht.

Andererseits kann man mit einem anderen Werkzeug ein beliebiges,
vorheriges Objekt lschen. Dies lscht dann auch alle davon abhngigen
Objekte.

Die Undo-Taste restauriert alle auf diese Art gelschten Objekte.

.function
.related expressionsyntax properties
Funktionen und Kurven

Das Programm kann Funktionen und Kurven zeichnen. Dazu
existiert ein Meneintrag und ein Werkzeug. Es erscheint ein Dialog,
in den man einen Bereich fr den Parameter eingeben muss und eine
Schrittweite. Normalerweise belsst man den Namen des Parameters beim
vorgegebenen "x".

Bei Funktionen lsst man den Ausdruck fr X leer und setzt fr
den Y-Wert einen gltigen Ausdruck in x ein, wie zum Beispiel
"sin(deg(x))".

Bei Kurven brauch man zwei Funktionen, eine fr den x-Wert und eine
fr den y-Wert.

Das Programm zeichnet die Funktion in die Konstruktion, wobei die
Konstruktionskoordinaten verwendet werden. Das sind die Koordinaten,
wie man sie bei eingeschaltetem Gitter sieht. Ungltige
Funktionsstellen werden bersprungen.

Funktionen knnen in anderen Ausdrcken verwendet werden. Dabei wird
der Y-Wert ausgewertet.

Man kann Funktionsgraphen und parametrische Kurven auch mit anderen 
Funktionen und andere Objekten schneiden. Auerdem kann man einen Punkt 
auf dem Graphen fixieren und dort gleiten lassen.

Funktionen und Kurven knnen gefllt dargestellt werden. Bei Kurven ist
das Fllzentrum normalerweise 0, aber man kann dies ndern. Im Eigenschaftsdialog
gibt es einen Knopf, mit dem man das Zentrum auswhlen kann.

Man kann einstellen, dass nur Punkte gezeichnet werden. Falls die Funktion
gefllt wird, wird eine Treppenfunktion gezeichnet, und zwar von den linken
Intervall-Enden aus, auer die Intervallgrenzen sind vertauscht. 

.defaults
.related line angle colors iconbar
Einstellungen

Man kann mehrere Einstellungen fr neue Objekte festlegen.

 - Farbe
 - Dicke
 - Stil von Punkten
 - Kreise partiell angezeigt oder nicht
 - Geraden partiell oder nicht
 - Strecken als Vektoren
 - Namensanzeige
 - Wertanzeige
 - Lange Namen
 - Groe und fette Schrift
 - Winkel grer als 180 Grad
 - Nicht-transparente Objekte

Dafr gibt es Werkzeuge, die alle in der oberen Reihe der
Werkzeugleiste angezeigt werden.

.edit
.related mouse properties expression
Bearbeiten von Objekten

Mit dem Werkzeug zum Bearbeiten wird der Eigenschaftsdialog von
einem oder mehreren Objekten aufgerufen. Solange die Umschalttaste
gehalten wird, werden die Objekte selektiert, und knnen dann auf
einmal bearbeitet werden. Der Eigenschaftsdialog fr mehrere Objekte
enthlt deaktivierte Einstellungen. Nur die aktivierten, genderten
Einstellungen werden bei allen Objekten verndert.

Hlt man beim Anklicken des Werkzeugs die Strg-Taste fest, so wird
automatisch das letzte Objekt bearbeitet.

Um den Dialog zum Einstellen von Bedingungen fr Formatierungen zu
erreichen, whlt man das Objekt mit Strg-Taste und der rechten Maustaste aus.
Fr viele Objekteigenschaften, wie Farbe und Dicke, kann man Bedingungen
einstellen, unter denen diese Eigenschaften aktiviert werden. Damit
sind spezielle Effekte mglich.

Die einzelnen Bedingungen werden der Reihe nach abgearbeitet. Die
erste zutreffende Bedingung fr eine Farbe bestimmt zum Beispiel die
Farbe. Man muss also eventeull darauf achten, dass sich die Bedingungen
nicht widersprechen.

Der Z-Wert bestimmt die Zeichenreihenfolge. Die Objekte mit dem greren
Z-Wert werden zuerst gezeichnet, aber erst nach den Hintergrundobjekten.

Wenn man die Bedingungen mehrere Objekt ndert, so kann das
aktuelle Objekt mit "this" zu bezeichnet werden.

.show
.related hide
Verstecken nach Farben

Dieses Icon whlt selektiv Objekte bestimmter Farben zur Anzeige aus.
Wenn die Konstruktion geschickt gestaltet ist, kann man damit sehr gut
eine bersicht ber die Konstruktionsschritte bekommen. Die
Farbe Schwarz wird allerdings immer angezeigt. Das Icon ndert sich
nach jedem Klick.

.grid
.related zoom mouse zoom
Gitteranzeige

Dieses Icon stellt die Anzeige eines Gitters ein und aus. Wenn das
Gitter eingeschaltet ist, so schnappen neue Punkte und mit der rechten
Maustaste bewegte Punkte bei Gitterpunkten ein. Das Werkzeug zum
Bewegen ist davon nicht betroffen. Man kann allerdings umgekehrt
einstellen, dass Punkte nur beim Bewegen mit der linken Maustaste
und dem Werkzeug zum Bewegen einschnappen. Dies ist ntzlich
fr Webseiten und Konstruktionen mit Gittern.

Das Einschalten des Gitters wird mit der Konstruktion abgespeichert,
so dass beim Laden der Konstruktion das Gitter automatisch wieder
eingeschaltet wird.

.replay
.related htmlexport text animatebreak
Schrittweise Wiedergabe

Mit dieser Funktion kann man schrittweise durch eine Konstruktion
gehen. Es erscheint ein Men mit Tasten, hnlich wie auf einem
Kassettenabspielgert. Die Wiedergabefunktion steht in Applets mit
Hilfe der rechten Maustaste zur Verfgung.

Es besteht die Mglichkeit, whrend des Abspielens mit der Taste 
Haltepunkte zu setzen. Diese Haltepunkte knnen dann einfach mit einer
Taste angesprungen werden. Beim Export in eine HTML-Datei kann dann
der Stil "Wiedergabe mit Haltepunkten" gewhlt werden, der dem
Benutzer die Mglichkeit gibt, von Haltepunkt zu Haltepunkt zu
springen. 

Bei der Wiedergabe werden versteckte Texte angezeigt, mit Haltepunkten
allerdings nur, wenn der versteckte Text auf dem Haltepunkt steht.

Versteckend Haltepunkte werden mit der Umschalttaste gesetzt. Solche
Haltepunkte verstecken alle Objekte vor ihnen bis zum vorigen
Haltepunkte. Die Konstruktion zerfllt damit in eine Folge von Teilen.

.animatebreak
.related replay
Animiere Haltepunkte

Damit wird eine Konstruktion automatisch von Haltepunkt zu Haltepunkt
wiedergegeben. Die Geschwindigkeit der Darstellung kann mit der
Umschalttaste und den Pfeiltasten Links und Rechts gesteuert werden.

Die Animation wird mit der Konstruktion gespeichert und beim Laden der
KOnstruktion automatisch gestartet.

.draw
.related mouse
Mit der Maus Zeichnen

Mit diesem Werkzeug kann man auf dem Bildschirm zeichnen. Verwendet
wird die aktuelle Farbe. Die Zeichnungen werden abgespeichert. Sie
blhen allerdings die Konstruktionsdatei auf.

.zoom
.related mouse grid
Mit der Maus Zoomen und Verschieben

Man kann mit Hilfe des Zoomwerkzeugs mit der Maus den Ausschnitt der
Konstruktion verndern. Beim Ziehen am Rand wird die Konstruktion
vergrert und verkleinert. Im Zentrum wird die Konstruktion
verschoben. Dabei nimmt die Maus eine andere Gestalt an.

Allerdings kann auch ohne das Zoomwerkzeug mit dem Mausrad gezoomt
werden, und mit der rechten Maustaste kann die Konstruktion verschoben
werden, wenn ein leerer Platz verschoben wird.

Der eingestellte Konstruktionsausschnitt wird abgespeichert. Bei
Laden wird die Konstruktion so angepasst, dass dieser Ausschnitt in
der Breite ins Bild passt.

.parameter
.related runmacro parametertypes target macro hintparameter
Makroparameter

Makros sind ein wichtiges Werkzeug, um den berblick in
komplizierteren Konstruktionen zu behalten. Ohne Makros sind
eigentlich nur einfache Konstruktionen mglich. Makros sammeln mehrere
Konstruktionsschritte in einem Schritt. Sie verhalten sich wie
Unterprogramme in einer Programmiersprache.

In Z.u.L. ist die Definition von Makros sehr einfach. Man definiert
eine "Musterkonstruktion" und erzeugt ein Makro, das diese
Musterkonstruktion nachmachen kann. Die Musterkonstruktion hat, genau
wie das sptere Makro, gewisse Ausgangsobjekte, die zu Makroparameter
werden, und gewisse Zielobjekte, die Makroziele werden. Z.B. hat die
Mittelsenkrechte zwei Punkte als Parameter und eine Gerade als Ziel.

Um Makros zu definieren, setzt man zunchst die Parameter fest. Dies
geschieht mit dem entsprechenden Menpunkt, oder mit dem
Makrowerkzeug in der oberen Werkzeugleiste. Die Parameter werden wie
blich mit der Maus ausgewhlt. Zum Zeichen, dass die Ausgangsobjekte
einzugeben sind, sind die Punkte links vom Pfeil im Makrowerkzeug
rot.

Siehe: Makroziele

.target
.related runmacro parameter macro
Makroziele

Nach der Eingabe der Parameter kann man optional Zielobjekte
auswhlen. Dazu drckt man das Makrowerkzeug nochmals, wonach die
Punkte rechts vom Pfeil rot gefrbt werden. 

Es ist zu beachten, dass in diesem Zustand nur Objekte angezeigt
werden, die aus den Parametern konstruierbar sind. Werden keine Ziele
angegeben, so besteht das Makro aus allen konstruierbaren Objekten.
Sonst besteht es nur aus denjenigen Objekten, die notwendig sind, um
das Ziel aus den Parametern zu konstruieren.

Wenn Ziele definiert wurde, knnen alle Zwischenobjekte automatisch
versteckt werden. Sonst werden nmlich alle Objekte angezeigt, die
auch in der Definitionskonstruktion sichtbar waren. Soll das Makro im
beschreibenden Modus verwendet werden, so ist es ebenfalls ratsam,
Zielobjekte anzugeben. Der Benutzer kann dann nmlich den Zielobjekten
beim Makroaufruf Namen zuordnen. 

Siehe: Makrodefinition

.macro
.related target parameter runmacro selfreference hintparameter defaultmacros macroerror
Makrodefinition

Beim dritten Druck auf das Makrowerkzeug wird das Makro erzeugt.
Es hat stets einen Namen, der im folgenden Dialog festzulegen ist.
In diesem Dialog ist es auch mglich, einen beschreibenden Kommentar
anzugeben. Der Kommentar kann vom Benutzer aus der Auswahlbox fr
Makros heraus angezeigt werden. Natrlich sollte sich der Kommentar
auf die bei den Prompts verwendeten Bezeichnungen beziehen.

Die folgenden Eingabefelder (eines fr jeden Parameter) nehmen Texte
auf, die dem Benutzer des Makros angezeigt werden, wenn die Eingabe
der Parameter erwartet wird.

Man kann Parameter auf bestimmte Objekte fixieren, indem man "=Name"
als Prompt eingibt. Wenn ein Objekt "Name" existiert und den richtigen
Typ hat, dann wird der Parameter beim Ablauf des Makros nicht
abgefragt, sondern auf das Objekt gesetzt.

Weiter kann man festlegen, ob die Konstruktionsdetails beim Ablauf des
Makros versteckt werden sollen, oder ob sie sogar vollstndig
versteckt werden sollen.

Makros verstecken normalerweise Objekte, die Duplikate von schon
vorhandenen Objekten sind. Dieses Verhalten kann man allerdings
abschalten.

Schlielich ist es noch mglich, whrend des Aufrufs von Makros vom
Benutzer einen Wert abzufragen. Dieser Wert kann als Gre eines
festen Kreises, als Gre eines festen Winkels oder als Wert fr einen
Ausdruck verwendet werden. Dazu gibt man bei der Definition im
Dialog den Namen, den der feste Kreis oder Winkel in der Konstruktion
hat, an.

Beim Aufruf wird eine Dialogbox erscheinen, in der der Benutzer einen
Wert eingeben kann. Der Kreis, der Winkel oder der Ausdruck wird dann
mit diesem Wert erzeugt. Der eingegebene Wert kann ein beliebiger
arithmetischer Ausdruck sein. Als Eingabeprompt wird der Name des
Objekts verwendet. Es knnen auch mehrere Eingaben gefordert werden.
Die Namen der entsprechenden Objekte werden durch Komma getrennt.

Makros knnen in Unterordner organisiert werden. Dazu stellt man dem
Namen den Unterordner wie in "Unterordner/Name" voran. Die Unterordner
knnen geschachtelt werden.

Siehe: Selbstreferenz, Versteckte Parameter

.hintparameter
.related macro parameter
Versteckte Parameter

Damit auch Punkte als Parameter eingegeben werden knnen, die nur zur
Orientierung dienen, ist es mglich, Punkte, die whrend des Ablaufs
des Makros bei der Parameterauswahl neu erzeugt wurden, sofort wieder
zu verstecken. Dazu muss bei der Definition des Makros der
entsprechende Parameter den versteckten Status haben.

Damit kann man Hinweispunkte setzen lassen. Ein Beispiel wre ein
Makro, das ein gleichseitiges Dreieck auf einer Strecke erzeugen soll,
und zwar auf derjenigen Seite der Strecke, die der Benutzer anklickt.
Fr die Definition des Winkels muss dann ein Ausdruck der Form
"if(a>0,60,-60)" verwendet werden.

.selectmacro
.related runmacro macro
Makroauswahl

Makros erscheinen in diesem Dialog in einer Liste. Ein einzelnes Makro
kann durch Doppelklick ausgewhlt werden. Falls der Dialog die Auswahl
mehrere Makros erlaubt, so markiert man mehrere Makros und besttigt
die Auswahl.

Makros knnen in Unterordner organisiert sein. In diesem Fall werden
die Unterordner durch Doppelklick ausgewhlt. Um zum Oberordner zurck
zu kehren, klickt man auf "..". Die Auswahl eines Unterordners whlt
alle Makros in diesem Ordner und seien Unterordnern aus.

Um ein Makro in einen Unterordner zu verschieben, benennt man es um.
Der Unterordner wird wie in "Unterordner/Makro" dem Makronamen voran
gestellt.

.runmacro
.related parameter parametertypes mouse expressionsyntax fixparameters selectmacro
Makros Aufrufen

Makros werden mit dem Makrowerkzeug gestartet. Das Makro muss aus der
Liste der vorhanden Makros ausgewhlt werden. Wird beim Starten des
Werkzeugs die Umschalttaste gedrckt, so wird einfach das vorherige
Makro nochmals gestartet. Auerdem knnen Makros mit der rechten
Maustaste an einer leeren Stelle aufgerufen werden. Es erscheint ein
Popup-Men mit einer Liste der vorhandenen Makros.

Nach dem Start des Makros erscheint in der Statuszeile der festgelegte
Text fr jeden Parameter hinter dem Makronamen, dem Typ des Parameters
und seiner Nummer.

Falls in Klammern "Leertaste whlt ..." steht, so kann man fr diesen
Parameter mit der Leertaste denselben Punkt auswhlen, wie bei dem
letzten Makroaufruf. Dies vereinfacht den mehrfachen Aufruf von Makros
mit vielen Parametern erheblich.

Wenn alle Parameter ausgewhlt sind, so wird das Makro ausgefhrt.
Falls das Makro einen Werteparameter hat, so erscheint eine Dialogbox,
die diesen Wert abfragt. Es kann dann jeder gltige arithmetische
Ausdruck verwendet werden.

.fixparameters
.related runmacro parameter
Fixierte Parameter

Beim Ablauf des Makros besteht die Mglichkeit, eine Kopie des Makros
zu erzeugen, bei der aber gewisse Parameter immer automatisch gewhlt
werden. Dazu drckt man die Umschalttaste whrend der Wahl eines
Parameters. Nach dem Beenden der Parameterauswahl erzeugt das Programm
ein weiteres Makro, bei dem die entsprechenden Parameter fest aus der
Konstruktion entnommen werden.

Werden solche Makros in Konstruktionen verwendet, in denen die
entsprechenden Objekte nicht existieren, oder werden die Objekte
gelscht, so wird wieder zur Eingabe der nicht existierenden Parameter
aufgefordert. Ihre Bindung wird sofort aufgelst.

brigens knnen fixierte Parameter auch gleich bei der Makrodefinition
erzeugt werden, indem als Prompt "=Objektname" eingegeben wird.

.parametertypes
.related parameter
Typen von Parametern

Im allgemeinen ist es am gnstigsten, Punkte als Parameter
auszuwhlen. Allerdings sind auch Kreise und Geraden mglich. Bei
Strecken, Geraden aus zwei Punkten (also nicht Parallelen, festen
Winkeln und Senkrechten) werden die Endpunkte der Strecke zu
sekundren Parametern, wenn sie zur Konstruktion der Zielobjekte
notwendig sind. Falls dies der Fall ist, muss der Benutzer dann auch
beim Makroaufruf ein Objekt gleichen Typs whlen. Falls die Gerade
ohne ihre Definitionspunkte verwendet wird, so kann er beliebige
Geraden whlen. Bei Kreisen wird immer der Mittelpunkt sekundrer
Parameter.

Sekundrparameter werden natrlich dann auch beim Lauf des Makros
zugeordnet. Es ist dabei wichtig zu beachten, dass die
Sekundrparameter in der gleichen Konfiguration vorliegen mssen, wenn
das Makro aufgerufen wird. So mssen etwa konzentrische Kreise als
Parameter wieder konzentrisch sein. Falls die Strecken AB und BC als
Parameter verwendet werden, mssen beim Aufruf Strecken EF und FG
angeben werden. Wegen dieser Komplikationen sollte man in diesem Fall
eher Punkte als Parameter nehmen.

Als Beispiel kann man eine Mittelsenkrechte in Abhngigkeit von einer
Strecke durch ein Makro konstruieren lassen.

.defaultmacros
.related runmacro save
Defaultmakros

Beim Start ldt Z.u.L. alle Makros aus der Datei ".de_default.mcr",
wenn diese Datei im aktuellen Verzeichnis gefunden wird. Die geladenen
Makros sind geschtzt. D.h., sie werden nicht mit Konstruktionen
abgespeichert und auch nicht beim Laden von Konstruktionen gelscht.

Um Defaultmakros zu lschen, muss man den Menpunkte aus dem
Makromen whlen und dort alle Makros auswhlen.

Wenn man die Datei mit den Defaultmakros erweitern will, so speichert
man eine Datei ".de_default.mcr" ins Startverzeichnis von Z.u.L.

.macroerrors
.related .macro
Objekt wird benutzt, ist aber nicht im Makro

Diese Warnung erscheint, wenn ein Objekt, das im Makro enthalten ist,
sich auf ein Objekt bezieht, das nicht im Makro enthalten ist. Die
hufigste Ursache sind Referenzen vom Typ @... in Ausdrcken, zum
Beispiel in bedingten Formatierungen. Die Objekte sind trotz dieses
Bezugs konstuierbar. Ignoriert man die Warnung, so beziehen sich die
Objekte, die beim Makroaufruf erzeugt werden, auf Objekte mit gleichem
Namen, sofern solche Objekte in der Konstruktion vorhanden sind.

Ein anderer loser Bezug sind die Grenzen von Kreisbgen. Da diese
Grenzen meist vom Kreis abhngen, hngt der Kreisbogen nicht von seinen
Grenzen ab, um Verwirrung zu vermeiden. Ein drittes Beispiel ist das
Zentrum von gefllten Polygonen.

Um die Warnung zu vermeiden, muss man lediglich die Objekte als Parameter
in das Makro aufnehmen.

.htmlexport
.related save runningdemo comment exportdialog exportjob
HTML-Export

Konstruktionen oder Aufgaben lassen sich als Applet in eine HTML-Seite
einbinden. Damit man den HTML-Code fr dieses Applet nicht selbst
eingeben muss, gibt es die Mglichkeit, diese Seite automatisch von
Z.u.L. erzeugen zu lassen. Vor dem HTML-Export muss man die
Konstruktion in eine Datei speichern.

Ortslinien und Animationen werden im Applet nach dem Laden der
Konstruktion automatisch erzeugt, wenn sie zur Zeit des Abspeicherns
der Konstruktion sichtbar waren (genau wie sonst beim Laden einer
Konstruktion).

Nach dem Bearbeiten des Dialogs wird eine Dateiauswahl angezeigt
mit der man die HTML-Datei erstellen kann. Falls eine Lsungsseite
erstellt werden soll, so wird eine zweite Dateiauswahl angezeigt.

Nachdem die HTML-Dateien erstellt wurden und lokal getestet sind,
mssen folgende Dateien auf den Web-Server publiziert werden:

- Die HTML Datei, die das Applet enthlt. 
- Eine eventuell vorhandene HTML-Lsungsdatei. 
- Eventuell Style-Sheets, falls CSS-Dateien verwendet werden. 
- Das Applet-Archiv zirkel.jar. 
- Die Konstruktion, bzw. die Aufgabe. 
- Eventuell das Hintergrundbild.

.htmlexporttemplate
.related htmlexport save comment settings
HTML Export mit Vorlagen

Mit Hilfe von Vorlagen lassen sich auf einfache Weise persnlich
angepasste Webseiten mit Konstruktionen erzeugen. Die Vorlage enthlt
alle ntigen Informationen, einschlielich Appletgre, Seitenfarben
und Appletfarben, CSS-Dateien und Applet-Archiv. Daher ist der Dialog
zur Erzeugung wesentlich krzer.

Im Exportdialog ist fr Codebase der Pfad von der HTML-Datei zu
zirkel.jar einzusetzen, also "..", wenn die Datei im Verzeichnis
darber liegt. Die Konstruktionsdatei muss relativ zu zirkel.jar
angegeben werden, also etwa "verzeichnis/datei.zir".

Einige Vorlagen sind in der Dokumentation enthalten. Der Benutzer kann
aus diesen Dateien leicht eigene Vorlagen erstellen. Vorlagen sind im
Prinzip HTML-Dateien mit Platzhaltern. Alle Platzhalter beginnen mit
"#". Vorlagendateien sollten die Erweiterung "*.template" bekommen.

Mance Vorlagen verlangen mehrere Abschnitte in der
Konstruktionsbeschreibung. Die Abschnitte werden durch eine Zeile "~"
voneinander getrennt.

Besonderes Augenmerk muss auf die Umlaute der deutschen Sprache in
HTML-Dateien gerichtet werden. Es gibt hier mehrere Mglichkeiten.
Das Programm untersttzt UTF-8 und exportiert auch Webseiten in diesem
Encoding. Solche Vorlagen lassen sich im HTML-Editor von Mozilla oder
in Frontpage ffnen und bearbeiten, oder auch in einen UTF-8 Editor
wie JE (vom selben Autor wie Z.u.L.). Alternativ kann UTF-8
in den speziellen Einstellungen abgestellt werden. Man sollte dann
allerdings Umlaute mit &auml; etc. kodieren. Dies gilt auch fr den
Konstruktionskommentar, wenn er in die HTML-Seite exportiert werden
soll.

Die folgenden Platzhalter sind implementiert.

#title
  Wird durch den Titel aus dem Exportdialog ersetzt.

#comment1,#comment2,...
  Wird durch den entsprechenden Abschnitt des Konstruktionskommentars
ersetzt. Der Konstruktionskommentar wird durch Zeilen mit "~" in
Abschnitte unterteilt. Jeder Paragraph eines Abschnittes wird in
<p>...</p> eingeschlossen.
  
#comment
  Wie #comment1,... Jedoch wird immer der ganze Kommentar verwendet.

#text1,#text2,...
  Wie #comment1,... Jedoch wird kein <p>...</p> erzeugt. Diese und
alle anderen HTML-Kommandos mssen in die Konstruktionsbeschreibung
eingegeben werden.

#text
  Wie #texte1,... aber ohne Abschnitte.

#parameter
  Fgt die ntigen Parameter fr Applets ein.

#color
  Fgt zustzlich Parameter fr eventuell genderte Farben ein.

#font
  Fgt zustzlich Parameter fr Fonts ein.

#codebase
  Fgt die Codebase aus dem Exportdialog ein.

Hier ist ein sehr einfaches Beispiel fr eine Vorlage.

  <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
  <HTML>
  <HEAD>
  <META HTTP-EQUIV="Content-Type" 
  CONTENT="text/html; CHARSET=utf-8">
  <TITLE>
  #title
  </TITLE>
  </HEAD>
  <BODY BGCOLOR=#F0F0F0>
  <H1>
  #title
  </H1>
  <CENTER>
  <P>
  <APPLET CODE="rene.zirkel.ZirkelApplet.class" #codebase WIDTH="400"
  HEIGHT="400" ALIGN="CENTER">
  <PARAM NAME="color" VALUE="240,240,240">
  #parameter
  </APPLET>
  </P>
  </CENTER>
  #comment
  </BODY>
  </HTML>

.exportdialog
.related htmlexport exportjob
Exporteinstellungen

Seitentitel: Dies ist die berschrift, die die Seite bekommt. Die
berschrift wird im HTML-Stil <H1> ber das Applet gesetzt. Das Applet
befindet sich zentriert darunter.

CSS Stil-Datei: CSS (Cascading Style Sheets) sind ntzlich, um
mehreren Internet-Seiten dasselbe Aussehen zu geben. Wenn man keine
CSS-Datei verwendet, lsst man das Feld einfach offen.

Die CSS-Datei muss relativ zu der HMTL-Datei angegeben werden, wobei
das Unix-Format mit der Verzeichnistrennung "/" verwendet werden muss.
Wenn sich die Datei im bergeordneten Verzeichnis befindet, kann man
einen Pfad relativ zur HTML-Seite verwenden.

Breite, Hhe: Betrifft die Breite und Hhe des Applets.

Konstruktionsdatei: Der Name der Datei, in der die Konstruktion
gespeichert ist. Im Allgemeinen wird diese Datei im selben Verzeichnis
liegen wie die HTML-Datei. Es ist aber auch mglich, relative Pfade im
UNIX-Stil anzugeben (etwa "../test.zir"), allerdings keine absoluten
URLs. Die Konstruktionsdatei muss relativ zur Datei zirkel.jar
angegeben werden.

Zirkel-Archiv: Das Programmarchiv. Es findet sich in der
Z.u.L.-Installation. Die Datei heit zirkel.jar und wird am
einfachsten in dasselbe Verzeichnis gestellt wie die HTML-Datei. Es
ist aber auch mglich, relative Pfade anzugeben. 

Farbe - Fr Hintergrund - Fr Applet: Das Feld zeigt eine Farbe an,
die man mit dem Knopf "Farbe Whlen" einstellen kann. Es kann gewhlt
werden, ob diese Farbe auch als Hintergrund fr die HTML-Seite
eingestellt werden soll. Auerdem kann gewhlt werden, ob diese Farbe
als Hintergrund fr die Konstruktion, die Icons und die Statuszeile
verwendet werden soll.

Falls Ihr Applet keinen Rand hat (eingebetteter Stil), so sollte
natrlich die gleich Farbe fr Hintergrund und Applet gewhlt werden.

Bildhintergrund: Falls die Konstruktion vor einem Bildhintergrund
dargestellt wird, der von einer Datei geladen wurde, und falls dieser
Hintergrund der Fenstergre entspricht, so wird ein Verweis auf das
Bild gespeichert. Auerdem ist die Applet-Gre auf die Bildgre
fixiert.

Man publiziert in diesem Fall das Bild an die Stelle, wo sich
das Archiv "zirkel.jar" befindet, oder ndert den Verweis zum Bild
im HTML-Text. 

Applet-Stil: Hier hat man folgende Auswahl

- Eingebettet: Das bedeutet, dass das Applet ohne Rand in die Seite
eingebettet wird. Dazu sollte man die Seitenfarbe gleich der
Applet-Farbe whlen. Man kann nichts konstruieren, sondern nur die
versteckten Objekte anzeigen (rechte Maustaste). 

- Rand: In diesem Falle enthlt man einen dreidimensionalen
Effektrahmen, der die Konstruktion umgibt. 

- Rand und Icons: Dies ist schon fr Konstruktionen geeignet. Es wird
ber dem Konstruktionsfenster eine Icon-Zeile angezeigt, wobei die
angezeigten Icons einstellbar sind. 

- Rand, Icons und Status: Dann erscheint zustzlich eine Statuszeile
unter der Konstruktion. Verzichtet man darauf, so erscheint der Text
immer noch in der Statuszeile des Browsers. 

- Wiedergabe mit Haltepunkten: Dies zeigt unter der Konstruktion Tasten
an. Der Benutzer kann damit durch die Konstruktion von Haltepunkt zu
Haltepunkt navigieren. Es mssen dazu natrlich Haltepunkte definiert
sein. 
 
Zeige Kommentar: Wenn dieses Kstchen aktiviert ist, wird der Kommentar der
Konstruktion unter dem Applet angezeigt.

Falls hierbei deutsche Umlaute verwendet werden, so wird auch das
funktionieren. Dies liegt daran, dass der Kommentar in der
internationalen Kodierung (UTF-8) oder in der Windows-Kodierung
gespeichert wird, und die jeweilige Kodierung korrekt in der
HTML-Seite eingestellt ist. Einige HTML-Editoren
kommen mit UTF-8 nicht zurecht. Wenn man die Seite also in
einem solchen Editor nachbearbeiten will, so empfiehlt es sich, die
Windows-Kodierung ISO-8869-1 einzustellen, indem UTF in den
"speziellen Optionen" abgeschaltet wird. Alle Browser sollten diese
genormte Kodierung korrekt darstellen knnen.

Farben: Falls eigene Farben definiert wurden (Konstruktionselemente
und Hintergrund), so kann ausgewhlt werden, ob das Applet diese
ebenfalls verwenden soll. Die Hintergrundfarbe betrifft nur den
Hintergrund der Konstruktion, der damit verschieden vom Hintergrund
der brigen Teile des Applets und von dem Hintergrund der Seite sein
kann.

Werkzeugauswahl und Optionsauswahl: Hier werden fr Applets mit
Icon-Leiste die Icons ausgewhlt, die erscheinen sollen. Im
Allgemeinen will man fr einfache Konstruktionen nicht den vollen Satz
an Werkzeugen zur Verfgung stellen. In jedem Fall sollte man aber das
Rckschritt-Icon vorsehen, damit der Benutzer nicht darauf angewiesen
ist, das Tastaturkrzel zu erraten. Auch die Farbauswahl erleichtert
ihm die bersicht ber die Konstruktion.

Der Benutzer kann immer nur diejenigen Werkzeuge verwenden, die ihm zur
Verfgung gestellt werden.

Fr Spezialflle ist es sinnvoll, nur das Makrowerkzeug zur Verfgung
zu stellen, oder das Makrowerkzeug mit einem Editor in der HTML-Datei
an die erste Stelle der Werkzeuge zu verschieben. Wenn dann nur ein
Makro in der Konstruktion enthalten ist, wird dieses Makro zu Beginn
als Werkzeug ausgewhlt.

Im beschreibenden Modus helfen die Icons dem Benutzer bei der Syntax
der Eingabe. Man sollte daher diejenigen Konstruktionswerkzeuge
vorsehen, die der Benutzer brauchen wird. Allerdings funktionieren in
diesem Modus auch alle anderen Konstruktionswerkzeuge.

Man beachte auch, dass bei einer Konstruktion die versteckten Objekte
am Anfang angezeigt werden, wenn dies im Moment des Exportierens auch
schon im Z.u.L.-Programm der Fall war.

.exportjob
.related htmlexport exportdialog comment
Aufgaben Exportieren

Aufgabe: Dies dient dazu, Aufgaben als normale Konstruktionen zu
speichern. Bei echten Aufgaben muss dieses Feld aktiviert sein.

Lsungsdatei - Springe zur Lsung - Lsungsdatei Speichern - Link zur
Lsung: Diese drei Einstellungen automatisieren das Erstellen einer
Lsungsdatei. Die Lsungsdatei ist eine HTML-Datei, auf der die Lsung
dargestellt sein sollte. Sie kann angesprungen werden, sobald der
Benutzer die Aufgabe gelst hat. Alternativ oder zugleich kann ein
Link unter das Applet gesetzt werden, der auf die Lsungsseite
verweist.

Der HTML-Export kann die Lsungsseite automatisch erzeugen
(Lsungsseite Speichern). Dabei wird die Aufgabe als normale
Konstruktion verwendet. Es wird eine zweite HTML-Seite erzeugt mit dem
angegebenen Namen. Die Lsung wird immer in dem Applet-Stil "Rand",
also ohne Konstruktionswerkzeuge, dargestellt.

Kommentar: In diesem Fall wird der Aufgabenkommentar, der
normalerweise die gestellte Aufgabe beschreibt, verwendet. Auf der
Lsungsseite wird der normale Kommentar verwendet, falls diese Seite
erstellt wird.

.runningdemo
.related htmlexport online
Laufende Demo

Es ist mglich eine Folge von Konstruktionen auf einer Webseite in
einem vorgegebenen Rhythmus abzuspielen. Ein Beispiel findet man auf
den Demo-Seiten. Einen automatischen Export gibt es hier nicht.

Der Code fr das Applet sieht in diesem Fall so aus.

 <APPLET ARCHIVE="zirkel.jar" CODE="rene.zirkel.ZirkelApplet.class" 
WIDTH="500" HEIGHT="565" ALIGN="center">
 <PARAM NAME="demo" VALUE="demo.xml">
 <PARAM NAME="color" VALUE="244,244,242">
 </APPLET>

Die Datei "demo.xml" enthlt die Liste der Konstruktionen und deren
Beschreibung, wie sie in der Statuszeile des Applets auftaucht. Ein
Beispiel fr die einfache Syntax ist

 <?xml version="1.0" encoding="utf-8"?>
 <Demo delay="30">
 <File name="Uhr.zir" delay="20">Uhrwerk</File>
 <File name="Cindarella-Maschine.zir">Cindarella-Maschine</File>
   ...
 </Demo>
 
.visual
.related expressionsyntax descriptivefiles runmacro
Beschreibende Konstruktionen

In diesem Modus werden die Konstruktionsschritte in einer Eingabezeile
unterhalb des Konstruktionsfensters eingegeben. Die Werkzeugleiste
bleibt zwar erhalten, aber die Werkzeuge funktionieren anders.

Das Anklicken eines Werkzeugs fhrt jetzt dazu, dass eine Vorgabe in
die Eingabezeile geschrieben wird, die allerdings noch bearbeitet
werden muss. Auerdem knnen die notwendigen Konstruktionsparameter
nicht mehr am Schirm ausgewhlt werden, sondern mssen per Namen in
die Parameter des Konstruktionsschrittes eingetragen werden. Der Name
des Konstruktionsergebnisses kann in der Eingabezeile festgelegt
werden. Die Konstruktion kommt dadurch zustande, dass in der
Eingabezeile die Eingabetaste (Return) gedrckt wird. Natrlich ist es
nun notwendig, eine gewisse Syntax einzuhalten. Die allgemeine Form
eines Konstruktionsschrittes ist.

 name=function(parameter,...)
 name1,name2=function(parameter,...)

Diese Syntax wird durchgngig eingehalten. Der Name kann fehlen. Dann
wird ein Name vom Programm vergeben. brigens werden im
nicht-visuellen Modus normalerweise alle konstruierten Objekte mit
Namen angezeigt.

Die folgende Liste gibt einen berblick ber die recht einfache Syntax
der Funktionen. Anstatt der deutschen Lang- oder Kurzform kann auch
die englische Alternative verwendet werden. Bei den Langformen spielt
Gro- oder Kleinschreibung keine Rolle.

Wenn in den Beispielen eine feste Gre verlangt wird, kann ein
beliebiger Ausdruck verwendet werden. 

Wenn ein Punkt verlangt wird, so knnen auch die Funktionen c(k),
a(s), b(s) verwendet werden. Dabei steht c(k) fr den Mittelpunkt
eines Kreises, a(s) und b(s) fr die beiden Punkte, die Strecken,
Geraden und Strahlen definieren. 

Beispiel 
 Langform 
 Alternative 
 Beschreibung 
 
A=P() 
 Punkt 
 point 
 Erzeugt einen Punkt, der zufllig irgendwo am Bildschirm erscheint. 
 
A=P(0,1) 
 Punkt 
 Erzeugt einen Punkt, der in (0,1) fixiert ist. 
 
a=s(B,C) 
 Strecke 
 segment 
 Erzeugt die Strecke von B nach C. 
 
a=s(B,2) 
 Erzeugt eine Strecke von B nach rechts, die auf die Lnge 2 fixiert
ist. Dabei entsteht ein weiterer Punkt. 
 
a=g(B,C) 
 Gerade 
 line 
 Erzeugt die Gerade durch B und C. 
 
a=r(B,C) 
 Strahl 
 ray 
 Erzeugt den Strahl von B aus durch C. 
 
k=k(A,B) 
 Kreis 
 circle 
 Erzeugt den Kreis um A durch B. 
 
k=k(A,2) 
 Erzeugt einen Kreis, dessen Radius auf 2 fixiert ist. Wieder kann 2
irgend ein Ausdruck sein. Ein Spezialfall ist es, wenn statt 2 die
Lnge einer Strecke verwendet wird. 
 
k=k(A,B,C) 
 Erzeugt einen Kreis um A mit Radius BC. 
 
A=S(g,g) 
 Schnitt 
 intersection 
 Erzeugt den Schnitt zweier Geraden. 
 
A,B=S(k,k) 
 Erzeugt die beiden Schnitte von Kreisen, oder von Kreisen mit
Geraden. Es kann auch nur ein oder kein Name angegeben werden. 
 
versch(A,P) 
 Verschieden 
 away 
 Der Schnitt A soll verschieden vom Punkt P sein. 
 
nahe(A,P) 
 Nahe 
 close 
 Der Schnitt A soll mglichst nahe beim Punkt P sein. 
 
M=M(A,B) 
 Mitte 
 midpoint 
 Erzeugt den Mittelpunkt von AB. 
 
g=p(g,A) 
 Parallele 
 parallel 
 Erzeugt die Parallele zu g durch A. 
 
g=l(g,A) 
 Lot 
 plumb 
 Erzeugt das Lot zu g durch A. 
 
a=w(A,B,C) 
 Winkel 
 angle 
 Erzeugt den Winkel ABC (Scheitel in B). 
 
a=w(A,B,90) 
 Erzeugt einen 90-Grad Winkel an ABC. Statt 90 kann wie immer jeder
Ausdruck verwendet werden. 
 
A=A(A,B,C) 
 Polygon 
 polygon 
 Erzeugt ein geflltes Vieleck mit diesen Ecken. 
 
wert(P,0,1) 
 Wert 
 value 
 Fixiert den Punkt nach (0,1). 
 
wert(s,2) 
   Fixiert die Strecke auf die Lnge 2. 
 
wert(k,2) 
   Fixiert den Radius des Kreises auf 2. 
 
wert(w,90) 
   Fixiert den Winkel auf 90 Grad. 
 
wert(o) 
wert(wahr,o) 
   Stellt die Wertanzeige fr das Objekt an und aus. 
 
wert(wahr) 
   Stellt die Defaultanzeige fr Werte ein und aus. 
 
name(o,p) 
 Name 
 name 
 Setzt den Namen des Objektes o auf p. 
 
name(o) 
name(wahr,o) 
 Stellt die Namensanzeige fr das Objekt an und aus. 
 
name(wahr) 
 Stellt die Defaultanzeige fr Namen ein und aus. 
 
v(o) 
v(wahr,o) 
 Verstecken 
 hide 
 Versteckt das Objekt und zeigt es wieder an. 
 
v(wahr) 
 Stellt den Defaultwert fr das Verstecken von Objekten ein und aus. 
 
farbe(grn,o) 
 Farbe 
 color 
 Frbt das Objekt mit einer der Farben Schwarz, Blau, Grn, Braun (black, blue, green, brown) 
 
farbe(grn) 
 Stellt die Farbe als Defaultfarbe ein. 
 
dicke(dick,o) 
 Dicke 
 thickness 
 Stellt die Darstellung des Objekts auf Dick, Normal oder Dnn (thick, normal, thin) 
 
dicke(dick) 
   Stellt die Defaultdicke ein. 
 
typ(quadrat,P) 
 Typ 
 type 
 Stellt die Darstellung des Punktes P auf Quadrat, Raute, Kreis oder Punkt (square, diamond, circle, point) 
 
typ(quadrat) 
 Stellt die Defaultpunktdarstellung ein. 
 
partiell(k) 
partiell(wahr,k) 
 Partiell 
 partial 
 Stellt die partielle Darstellung des Objekts k an oder aus. 
 
partiell(wahr) 
 Stellt die Defaultdarstellung um. 
 
voll(o) 
voll(true,o) 
 Voll 
 fill 
 Stellt das Objekt o auf gefllte oder nicht gefllte Darstellung. 
 
zur(o) 
zur(true,o) 
 Zurck 
 back 
 Stellt das Objekt in den Hintergrund oder nicht. 
 
fenster(0,0,5) 
 Fenster 
 window 
 Stellt das Sichtfenster auf das Zentrum (0,0) und die Breite 2*5. 

stumpf(a)
stumpf(true,a)
 obtuse
 Stellt fr Winkel ein, dass sie grer als 180 Grad werden knnen.

solid(a)
solid(true,a)
 Solid
 Macht das Objekt undurchsuchtig.

Beschrnkt(c,A,B)
 restrict
 Schrnkt die Darstellung des Kreises c auf den Bogen AB ein.

gltig(o)
gltig(true,o)
 valid
 Entfernt die Einschrnkungen von Loten und Schnitten, damit sie nicht
 ungltig werden, wenn sie auerhalb von Strecken und Bgen liegen.

name(A,B)
 rename
 Nenne das Objekt A in B um.

Makros

Auch Makros knnen verwendet werden. Der Funktionsname ist in diesem
Fall der Makroname. Namen knnen nur an die angegebene
Makro-Zielobjekte vergeben werden. Es ist deswegen gnstig, bei der
Definition von Makros immer die wesentlichen Ziele anzugeben.

Bei Makros, die einen Prompt zur Greneinstellung eines Objektes
enthalten, kann diese Gre als zustzlicher Parameter angegeben
werden.

.descriptivefiles run
.related visual save
Beschreibende Konstruktionen in Dateien

Damit ist es mglich, Konstruktionen in der beschreibenden Form in
eine Datei zu schreiben. Auerdem kann die Datei Makrodefinitionen
enthalten, die sich auch gegenseitig aufrufen drfen. Damit entsteht
eine einfache Programmiersprache fr Konstruktionen. Solche
Konstruktionen lassen sich direkt laden (wenn sie etwa in einem
externen Editor erstellt wurden), oder vor dem Laden bearbeiten.

Diese Konstruktionsbeschreibungen sehen wie normale Konstruktionen
aus. Sie knnen Kommentare enthalten die mit "//" eingeleitet werden
und fr den Rest der Zeile gelten. Die verwendete Sprache ist
zeilenorientiert. Jeder Konstruktionsschritt nimmt genau eine Zeile
ein.

Auerdem knnen sie Makros enthalten, die auch andere Makros aufrufen
knnen. Ein typisches Beispiel ist

 Makro U 
 // Kreis durch drei Punkte
    Parameter A=P // Erster Punkt
    Parameter B=P // Zweiter Punkt
    Parameter C=P // Dritter Punkt
    g1=MS(A,B)
    g2=MS(A,C)
    U=S(g1,g2)
    Ziel k=k(U,A)
 Ende

Die Einrckungen sind hier optional. Die Kommentarzeilen am Anfang
werden als Makrokommentar gespeichert. Parameterpunkte sind mit dem
Schlsselwort Parameter (oder Param) gekennzeichnet, und Ziele mit dem
Schlsselwort Target (oder Ziel). Der Prompt fr diese Parameter ist
der evtl. vorhandene Einzeilenkommentar nach dem Parameter.

Das Makro im obigen Beispiel ruft das Makro MS auf, das die
Mittelsenkrechte zwischen zwei Punkte konstruiert. Das Makro knnte
etwa so aussehen.

 Makro MS
 // Mittelsenkrechte
	Param A=punkt
	Param B=punkt
	partiell(wahr)
	k1=kreis(A,B)
	k2=kreis(B,A)
	partiell(falsch)
	P1,P2=schnitt(k1,k2)
	Ziel g=gerade(P1,P2)
 Ende

Da MS ein Zielobjekt hat (die Mittelsenkrechte), kann im Aufruf
g1=MS(A,B) diesem Ziel ein Name zugewiesen werden. Ziele mssen
separat definiert werden, wenn in einer Zeile mehr als ein Objekt
entsteht.

 A,B=schnitt(g,h)
 Ziel B

Ein Makro kann mehrere Ziele haben, die dann aber auch alle beim
Aufruf zugewiesen werden mssen.

 A,B=test(...)

Prompts sind ebenfalls mglich. Dazu wird das Schlsselwort Prompt
verwendet. Wie bei der normalen Definition von Makros wird der
Benutzer beim Aufruf des Makros nach dem Wert dieses Objekts gefragt,
oder beim beschreibenden Aufruf wird der Wert von einem zustzlichen
Parameter gelesen. Das Objekt muss ein fixiertes Objekt sein.

Man beachte bei Makrodefinitionen, dass nur diejenigen Objekte
konstruiert werden, die tatschlich aus den Parametern konstruierbar
sind. Andere Konstruktionsschritte werden nicht ausgefhrt.

Verwendet man Kreise oder Geraden als Parameter, so mssen die
Elternobjekte vorher definiert sein. Die Mittelsenkrechte knnte dann
auch von einer Strecke abhngen.

 Makro MS
 // Mittelsenkrechte
	A=punkt
	B=punkt
    Parameter s=strecke(A,B)
	partiell(wahr)
	k1=kreis(A,B)
	k2=kreis(B,A)
	partiell(falsch)
	P1,P2=schnitt(k1,k2)
	Ziel g=gerade(P1,P2)
 Ende

Falls Kreise als Parameter verwendet werden, so kann man die spezielle
Syntax

 A=Punkt
 Parameter k=Kreis(A)
 verwenden. Diese Art von Kreisen macht nur als Parameter in Makros Sinn. 

Es gibt das spezielle Kommando "sichtbar" (showall), das alle
Zwischenobjekte des Makros sichtbar macht. Im Gegensatz dazu versteckt
"unsichtbar" (invisible) alle Zwischenobjekte vollstndig.

.assignments
.related save restricted colors comment
Aufgaben

Aufgaben sind Konstruktionsaufgaben, die der Benutzer lsen soll. 
Dem Benutzer werden die Ausgangsobjekte angezeigt und das Zielobjekt 
in schwcherer Darstellung.
Beachten Sie, dass man in einem Applet die mglichen Werkzeuge einschrnken kann.

Sobald der Benutzer die Aufgabe gelst hat, wird dies in einem 
Dialogfenster angezeigt. Alternativ kann man, wenn die Aufgabe 
in einem Applet gestellt wird, zu einer Lsungsseite springen.

Aufgaben werden erzeugt, indem man das letzte anzuzeigende Objekt 
auswhlt und die Zielobjekte. Dazu existiert ein spezielles Werkzeug 
im Men. Das letzte darzustellende Objekt ist das letzte der Ausgangsobjekte, 
auf die der Benutzer vollen Zugriff hat. Objekte nach diesem 
Objekt werden nur dann dargestellt, wenn Sie Zielobjekte der Aufgabe sind. 
Allerdings kann der Benutzer auf Zielobjekte natrlich nicht zugreifen. Mit 
Hilfe der Umschalttaste knnen sekundre Zielobjekte ausgewhlt werden, 
die nicht berprft werden sollen. Sie dienen nur als zustzliche Orientierung. 
Wird ein Zielobjekt vor dem Abspeichern der Aufgabe versteckt, 
so ist es nicht sichtbar. 
In diesem Fall sollte die Erklrung der geforderten Aufgabe eindeutig sein.

Im Normalfall wird man eine Aufgabe lsen, bevor man sie stellt. 
In diesem Fall ist die Lsungsdatei, zu der das Applet springen kann, 
identisch mit der Aufgabendatei. Man whlt als letztes darzustellende Objekt 
das letzte der Ausgangsobjekte und die Zielobjekte befinden sich hinter diesem 
Objekt, weil sie ja von den Ausgangsobjekten abhngen. Allerdings ist es 
auch mglich Aufgaben zu stellen, die man nicht gelst hat. In diesem Fall 
befinden sich die Zielobjekte durchaus auch vor den Ausgangsobjekten. 
Man muss dann sicher stellen, dass alle Objekte, die der Benutzer nicht 
verwenden knnen soll, sekundre Zielobjekte sind.

Auerdem kann noch fr die Aufgabe ein eigener Kommentar festgelegt werden, 
der die Aufgabe beschreiben sollte. Die Aufgabe kann getestet werden. Dies zeigt 
die Aufgabe aus der Sicht des Benutzers, allerdings mit dem vollen Werkzeugsatz.

Bei Polygonen sollte man nur die notwendigen Eckpunkte als Ziele vorgeben. 
Falls der Lsende unntige Zwischenpunkte eingibt, also Punkte auf den Seiten 
des gesuchten Polygons, so wird dies erkannt. Gibt man selbst solche 
Zwischenpunkte ein, so mssen diese Zwischenpunkte auch in Lsung vorhanden sein.

.browser
.related online
Hilfe im Browser

Die Hilfe im Browser muss evtl. konfiguriert werden. Auf
Windows-System nimmt Z.u.L. den Internet-Explorer als Browser,
sonst Netscape an. Das Programm versucht auch, den Pfad zur Hilfedatei
zu finden. Falls keine Datei gefunden wird, wird ein Link zur
Hilfeseite im Web angenommen.

Falls die Hilfe nicht funktioniert, so muss man den Browser selbst
konfigurieren. Dazu gibt man ein

Pfad_zum_Browser Pfad_zur_HTML_Hilfedatei

Pfade mit Leerzeichen mssen in "..." eingeschlossen werden.

.comment
.related assignment parameter htmlexport
Kommentare

Konstruktionen knnen kommentiert werden. Kommentare werden beim Laden
der Konstruktion angezeigt. Auerdem knnen Kommentare in die
HTML-Datei exportiert werden.

Wichtig sind Kommentare von Aufgaben. Sie sollen die Aufgabenstellung
enthalten.

Auch Makros knnen Kommentare haben.

.fonts
.related zoom save properties
Fonts

Fonts werden entweder pro Objekt oder global eingestellt. Die globalen
Einstellungen haben Vorrang.

Z.u.L. verwendet Fonts in zwei Grenstufen. Die Fonts werden mit dem
Konstruktionsfenster skaliert, genau wie die Gre von Punkten. Da
dies bei kleinen Fenstern zu kleinen Objekten fhrt, kann man eine
Minimalgre einstellen.

Es kann auch global ein fetter Font gewhlt werden. Dies empfiehlt sich
insbesondere fr den Grafikexport.

.sizes
Greneinstellungen

In diesem Dialog kann man die Mimimalgren fr Punkte, Linien und Schriften
einstellen. Diese Gren werden normalerweise mit der Fenstergre skaliert.
Allerdings wird dabei die hier eingestellte Minimalre eingehalten.

Man beachte, dass man beim Grafikexport die exakte Gren whlen kann, die
unabhngig von der Gre des Exports sind.

Auerdem kann man die Vektorgre und die Gre des Bereichs
fr die Auswahl von Objekten einstellen.

Die Minimalgren knnen beim HTML-Export exportiert werden.

.save
.related assignments parameter descriptivefiles print defaultmacros filedialog print
Speichern und Laden

Konstruktionen werden im XML-Format in Dateien gespeichert. Das Format
ist fr Menschen lesbar. Normale Konstruktionen haben die Erweiterung
".zir", Aufgaben die Erweiterung ".job" und Makros die Erweiterung
".mcr". 

Konstruktionen knnen Makros enthalten oder nicht. Man whlt
mit einem Schalter, ob Makros mit der Konstruktion abgespeichert
werden sollen oder nicht. Damit sich Makros nicht in Konstruktionen
aufhufen, gibt es einen Schalter, mit dem Makros beim
Laden einer Konstruktion automatisch gelscht werden. Dies gilt nicht
fr Defaultmakros.

Dateien knnen komprimiert werden. Dies geschieht automatisch, wenn
die Erweiterung um "z" ergnzt wird.

.print
.related exportsettings
Druck und Export von Grafik

Es gibt verschiedene Exportformate fr Grafiken. Fr Vektorgrafiken
ist EPS am gebruchlichsten und fr Bitmaps empfehle ich PNG. 
Beide Formate lassen sich in Textverarbeitungen importieren.
PNG ist wegen der schneren Grafik vorzuziehen, wobei man allerdings
die Grafik skalieren muss, so dass die Qualitt ausreichend ist.

Beim PNG-Export erscheint daher ein Dialog, in dem an die Gre der
exportierten Grafik angeben kann, eventuell auch mit einem
Faktor relativ zum aktuellen Bildschirm. Es ist aber auch mglich
die Gre durch die gewnschte Druckgre und Auflsung einzustellen.
Es gibt eine Reihe Voreinstellungen, die sich aus einer Auswahlbox whlen lassen.
Mit der Vorauswahl "1:1 bei 300 DPI" wird sicher gestellt, dass die Auflsung 
hoch genug ist, um die Grafik skaliert (1 Einheit = 1 cm) mit 300 dpi
auszudrucken.

Da beim Verkleinern Schriften, Linien und Punkte zu klein werden,
knnen diese Objekte skaliert werden, indem die gewnschte Gre
angegeben wird. Es gibt eine Vorschau, die den Effekt am Schirm
vorfhrt. Die Grenangaben sind normalerweise in cm. Es knnen aber
auch die Einheiten mm, '', in oder pt angegeben werden.

Fr LaTeX gibt es einen speziellen Export, der zwei weitere Dateien erstellt.
Die erste enthlt Informationen ber die Bildgre und hat die Endung "bb".
Die zweite enthlt den LaTeX-Code, um das Bild einzufgen. Sie hat
die Endung "ztx". Dabei ist es mglich, die Zeichenketten in der Konstruktion
von LaTeX exakt positioniert zeichnen zu lassen. In einem weiteren Dialog
kann man auswhlen, welche Typen der Zeichenketten von LateX bernommen
werden sollen. Im LaTeX-Quelltext bindet man das Paket "graphicx" ein.
Die Bildausgabe erfolgt mit einem input-Befehl aud der Datei "bild.ztx".
Dieser Befehl sollte zentriert in einer figure-Umgebung stehen, also zum
Beispiel

 \begin{figure}
 \centering
 \input{bild.ztx}
 \end{figure}

Zum Export von Graphiken fr das Web whlt man normalerweise die Voreinstellung
"Fenstergre". Die Schriften brauchen dabei nicht skaliert zu werden.
Es ist auch mglich nur einen gewissen Bereich im Zentrum zu exportieren.
In diesem Fall erscheint in der Vorschau ein Rahmen, der natrlich nur
sichtbar ist, wenn der Bereich kleiner als das Fenster ist.

Der Dialog zu Skalieren erscheint auch, wenn Grafiken auf die Zwischenablage
exportiert werden. Falls Sie eine Kopie des Konstruktionsfensters wollen,
so whlen Sie bitte "Fenstergre" in diesem Dialog.

Beim PDF-Export ist es nur sinnvoll, die gewnschte Bildbreite in cm
anzugeben. Dort knnen die Schriften, Linien und Punkte ebenfalls
skaliert werden, wenn die Ausgabe zu klein wird.

Konstruktionen knnen einfach direkt auf einem Drucker gedruckt werden. 
Im Men kann man einstellen, dass die Lnge 1 genau 
auf 1 cm gedruckt wird.

.filedialog
.related save settings
Der Dateiauswahldialog

Z.u.L. benutzt einen speziellen Dialog zur Auswahl von Dateien. Man
kann allerdings auch den normalen Dialog benutzen. Der Schalter dafr
befindet sich in den speziellen Einstellungen.

Die Eingabefelder fr den Dateinamen, das Verzeichnis und die
Dateimuster merken sich vorherige Eingaben. Drcken Sie dazu die
Pfeiltaste nach oben oder unten. Die alten Verzeichnisse findet man
zustzlich in einer Auswahlliste.

Verzeichnisse werden durch Doppelklick in der rechten Liste
ausgewhlt, Dateien durch Doppelklick rechts oder mit dem
Aktionsknopf "Speichern" oder "Laden". Es gibt einen "Zurck"-Knopf,
der in das vorherige Verzeichnis springt. Der Knopf funktioniert auch
nach dem Schlieen und erneuten ffnen des Dialogs.

Der Knopf "Eigene" springt in das Z.u.L.-Verzeichnis, falls dies bei
der Installation angelegt wurde. Es heit "ZuL Dateien" und befindet
sich in Windows in "Eigene Dateien". Falls dieses Verzeichnis nicht
gefunden wurde, so springt der Dialog in das Hauptverzeichnis des
Benutzers, unter Windows in "Eigene Dateien", unter Linux in das home
Verzeichnis. Hlt man die Umschalt- und die Strg-Taste whrend eines
Drucks auf "Eigene" fest, so wird das aktuelle Verzeichnis neues
Z.u.L.-Verzeichnis. Ein erneuter Klick mit diesen Tasten stellt wieder
den alten Zustand her.

Um ein neues Verzeichnis anzulegen, wird der Name in das
Verzeichnisfeld eingetragen und der Knopf "Neues Verzeichnis"
gedrckt. Mit diesem Dialog kann man keine Dateien oder Verzeichnisse
lschen.

.construction
.related hide reorder
Liste von Objekten

Die Konstruktionsbeschreibung enthlt eine Liste der Objekte in der
Konstruktion. Von hier aus kann man auch den Einstellungsdialog der
Objekte ffnen und damit vollstndig versteckte Objekte wieder
sichtbar machen. Die Farben der Linien entsprechen den Objektfarben.
Vollstndig versteckte Objekte stehen in Klammern.

Im Auswahlmen der ersten Zeile kann die Darstellung auf bestimmte
Objekte reduziert werden. "Sichtbare Objekte" zeigt alle in der
Konstruktion sichtbaren Objekte, also auch versteckte, wenn der
Modus zum Anzeigen versteckter Objekte angeschaltet ist. Vollstndig
versteckte Objekte sind nur sichtbar, wenn "Alle Objekte" ausgewhlt
wird.

.colors
.related htmlexport
Farben

Alle Farben knnen beliebig eingestellt werden. Die Farben werden
nicht mit der Konstruktion gespeichert. Jedoch werden sie beim
HTML-Export in das Applet geschrieben.

Die Farben werden im blichen RGB-Modell eingestellt.

Beim Export in Applets kann zustzlich eine Farbe fr den
Seitenhintergrund und fr den Hintergrund des Applets eingestellt
werden.

.settings
.related restricted iconbar tips beginner exportsettings
Spezielle Einstellungen

In diesem Dialog kann man zunchst einstellen, ob Objekte beim Ziehen
mit ihrer Position oder Gre angezeigt werden sollen. Dies ist in
vielen Fllen ntzlich, am Anfang aber eher verwirrend. Die Anzeige
kann auf fixierte Objekte beschrnkt werden.

Auerdem knnen einige Nachfragen abgeschaltet werden, sowie der
Dialog zur Auswahl von Objekten, wenn die Auswahl mit der Maus nicht
eindeutig war. In diesem Fall wird immer das erste Objekt verwendet.

Die Vorschau abzuschalten, ist durchaus sinnvoll. Gerade Anfnger
werden durch die Vorschau zu ungltigen Konstruktionen verfhrt. Die
Vorschau von erzeugten Punkten ist hier nicht kritisch und sehr
hilfreich.

Die Werkzeugleiste kann an den unteren Bildrand verbannt werden.

Die Dateiauswahl des Systems wird normalerweise durch eine eigene
ersetzt.

Normalerweise verwendet Z.u.L. UTF-8 fr Dateien. Dies sollte man nur
ndern, wenn Konstruktionen per Hand ediert werden und kein
UTF-8-Editor benutzt wird.

Auf langsamen System kann man die verbesserte Grafik abschalten.

Der Smartboard-Modus nimmt darauf Rcksicht, dass Smartboards keine
Ereignisse beim Bewegen von Objekten erzeugen, so dass keine Vorschau
mglich ist.

Makros werden normalerweise mit einem einfachen Klick der rechten Maus
aufgerufen. Man kann hier einstellen, dass ein Doppelklick bentigt
wird.

Aufgrund von Beschrnkungen auf Bildschirmen kann man Punkte entweder
exakt auf dem richtigen Platz darstellen, oder exakt als Quadrate. 
Beides ist nicht mglich.

.exportsettings
.related settings print
Einstellungen fr den Grafikexport

Hier kann engestellt werden, dass sich das Programm beim Verkleinern
nicht an die minimale Punkt- oder Schriftgre halten soll. Dies
ist notwendig, wenn der Schirm auf ein relativ kleines Bild
getreu skaliert sein muss.

Bitmaps knnen mit dem eingestellten Hintergrund oder mit weiem
Hintergrund gespeichert werden.

.reorder
.related circle angle expressionsyntax
Umordnen von Objekten

Man kann zu spt konstruierte Objekte mit dem
Werkzeug "nderung der Reihenfolge" nach vorne legen. Das Programm
macht nach der Auswahl eines Objektes einen Vorschlag, den man
annehmen sollte. Es wird immer die frhest mgliche Position
vorgeschlagen. Dies ist im Wesentlichen fr die Reihenfolge
des Zeichnens ntzlich.

.tips
.related online browser start move intersection expressionsyntax reorder
Tipps und FAQ

Hier findet man einige Hinweise auf Probleme, die hufig auftreten.

Ungltige Konstruktionen: Man kann eine Konstruktion dadurch
berprfen, dass man einen Ausgangspunkt verschiebt. Wenn die
Konstruktion dabei ungltig wird, so liegt das meist an
Schnittpunkten. Anstatt einen Schnitt zu verwenden, wurde ein neuer
Punkt erzeugt.

Falsche Schnittpunkte: Wird die Konstruktion ungltig, sobald die
Ausgangspunkte ihre gegenseitige Orientierung ndern, so liegt das
meist an der Auswahl eines Schnittpunktes. Die meisten Probleme
erledigt die Automatik des Programms. Gelegentlich sollte man jedoch
Hand anlegen, indem man im Eigenschaftsdialog des Schnittpunktes "Weg
von" oder "Hin zu" anklickt und einen Punkt auswhlt, von dem der
Schnittpunkt verschieden sein soll, bzw. bei dem der Schnittpunkt
liegen soll.

.keyboard
.related gui delete zoom mouse
Die Tastatur

Die meisten Kommandos in Z.u.L. knnen mit der Tastatur ausgewhlt
werden. Die entsprechenden Tasten sind im Men jeweils hinter dem
Werkzeug aufgelistet.

Allerdings muss dazu Z.u.L. den Tastaturfokus haben. Ein Klick mit
der rechten Maustaste an einer leeren Stelle in die Konstruktion gibt
dem Programm den Fokus.

Hufig verwendet werden +/- zum Vergrern und Verkleinern und die
Pfeiltasten zum Verschieben der Konstruktion. Wichtig ist auch die
Rckschrittaste zum Lschen des letzten Objekts. F1 ffnet wie blich
die Hilfe.

Auerdem setzt die ESC-Taste das aktuelle Werkzeug auf den
Ausgangszustand zurck.

Die Strg-Taste wird manchmal zusammen mit der Maus verwendet.

Man beachte auch, dass manche Java-Versionen die Leertaste als
Besttigungstaste fr Dialogknpfe verwenden, andere die
Eingeabetaste.

.image
.related background
Bilder

Bilder knnen in die Kosntruktion aufgenommen werden. Verwendet man drei
Ankerpunkte, so wird das Bild affin skaliert, verwendet man zwei, so wird
es gedreht und gestreckt. Wollen Sie nur zwei Punkte verwenden, so whlen
sie den ersten oder zweiten Punkt erneut aus.

Bilder mssen sich im gleichen Verzeichnis wie die Konstruktion befinden.
Bilder knnen auch als Hintergrundbild verwendet werden.

.language
Sprache

Normalerweise startet Z.u.L. in der Sprache des Systems, in dem es luft.
Sie knnen die Sprache aber auch wechseln. Verwenden Sie die folgenden
Abkrzungen.

 Englisch - en
 Deutsch - de
 Franzsich - fr
 Hollandisch - nl
 Italienisch - it
 Spanisch - es
 Portugiesisch - pt
 Brasilianisch - br
 Slowenisch - sl
 Dnisch - da
 Norwegisch - no
 Polnisch - pl
 Russisch - ru

Die Sprache kann ber einen Menpunkt eingestellt werden, oder mit einem
Kommandozeilenargument wie "-l en" fr Englisch.

.selfreference
Objekte mit Selbstbezgen

Es ist mglich, einen Punkt zu definieren, dessen Koordinaten beim Verschieben
ganzzahlig bleiben. Dies erreicht man dadurch, dass die Koordinaten des Punktes
mit floor(...) fixiert werden. Der Punkt ist trotzdem vom Benutzer verschiebbar.
Es gilt nmlich die Regel, dass Objekte, die sich nur auf sich selbst beziehen
(@-Bezge zhlen hier nicht), bewegbar sind. In diesem Fall wird zunchst
der Rest der Konstruktion bewegt, dann der Punkt fixiert. Auf diese Art kann
man auch Punkte definieren, die innerhalb von bestimmten Gebieten gehalten
werden.

Solche fixierten, beweglichen Punkte lassen sich auch per Makro erzeugen. Sie
mssen dazu ein Makroparameter sein, der mit der Umschalttaste angewhlt wurde.
Beim Ablauf des Makros erhalten die fr den Parameter gewhlten Punkte diese
Fixierung.

