Versione 1.18 / 2008-09-07
Franz Reiter |
franzr@gCAD3D.org |
Thomas Backmeister
(mathematics) |
t.backmeister@gmx.at |
David Burke
(traduzione dal tedesco all'inglese) |
davidrjburke@hotmail.com |
Tradotto con il permesso dell'autore dalla versione in Tedesco
"gCAD3D_de.htm, Ver 0.86" con l'aiuto di Google Translator e LEO.
(NOTA BENE: Non si garantisce la perfetta corrispondenza alle intenzioni dell'autore delle istruzioni tradotte. Si ricorda di verificare attentamente cio' che e'. riportato e comunicare nel caso eventuali discrepanze
Sono benvenuti aiuti di qualsiasi genere.
Questa versione del manuale ( 0.0.1) e' stata tradotta a partire dal 15/06/2009 ed e' tutt'ora in progress.
Copyright (C) 1999-2004 CADCAM services Franz Reiter
http://www.gCAD3D.org
franz.reiter@cadcam.co.at
Premessa
Funzioni Grafiche
Funzioni di Input e Output
Funzioni VWR / CAD / MAN
NC-Funktionen
Supporto MultiModello
Funzioni del Programma
gCAD3D e' gratis
(Freeware).
gCAD3D puo' essere utilizzato per qualsiasi tipo di lavoro senza alcun costo.
gCAD3D puo' essere copiato senza alcuna restrizione.
Alcuna limitazione all'aggiunta di parti di programma(Plugin e DLL)
.
NON ESISTE NESSUNA GARANZIA PER I RISULTATI OTTENUTI DALL'USO DEL PROGRAMMA.
IL RISCHIO PER L'UTILIZZO DEL SOFTWARE E' COMPLETAMENTE A CARICO DELL'UTILIZZATORE.
Copyright (C) 1999-2007 CADCAM-Services Franz Reiter
http://www.gCAD3D.org
franz.reiter@cadcam.co.at
gCAD3D ha
La possibilita' di Importare/Esportare modelli utilizzando software interno,
La possibilita' di visualizzare il modello grazie al proprio 3D-OpenGL-Viewer,
Un programma interprete di geometrie scritte con programmi a controllo numerico -NC- in 3D,
Un proprio ed integrato processore NC
Un progamma di interfaccia che permette di applicare programmi esterni (Plugins)
I programmi NC possono essere scritti mediante
Oggetti geometrici generati interattivamente
Istruzioni a riga di comando
Importando un modello(Dxf, Iges, Step ..)
Da dati derivanti da un file creato da un programma esterno
Da programmi speciali appositamente scritti
L'interprete dei comandi permette di eseguire le seguenti operazioni
Modellazione della geometria dell'oggetto
Elaborazione dei dati NC, diretto e controllato mediante programmazione
Trattamento dei dati
Analisi dei dati
Programmazione di funzioni
E' disponibile la documentazione delle seguenti funzioni:
Descrizione disegni 2D, modelli 3D e Foto (Bitmaps)
nello stesso ambiente di rappresentazione.
Tutte le rappresentazioni possono essere dinamicamente generate
Tutte le rappresentazioni degli oggetti possono essere collegati interattivamente
E' possibile collegare interattivamente gli oggetti del modello:
Selezione del modello (via HTML - HREF)
Selezione di un programma (Plugins starten)
Cambio di Vista (Viewport)
Cambio dinamico dei parametri del modello
Il processore NC e' un macroprogramma interprete di comandi; il macroprogramma si trova nella directory
<base>/wc/*.mac. Il macroprogramma supportano in Testo Ascii:
Implementazione di un qualsivoglia programma di trattamento
Possibilita' di combinazione di cicli (p.e. Pre e post taglio, separazione etc.)
Generazione di parti di contorni parametrici (p.e. fori ellittici, asolature etc.)
L'output dei dati e' possibile tramite:
esportando un database grafico (Dxf, Iges)
uno standard - ISO - Postprocessore
Speciali funzioni per esportare dati(programmi utente)
Il formato proprio del programma APT3D (Ascii-Textformat)
I programmi utente e i relativi dati saranno utilizzati, salvati e trattati esclusivamente nella finestra di editor di testo.
La rappresentazione dei dati e' fatta esclusivamente con la generazione di questi codici.
L'analisi delle curve e delle superfici (ellissi, superfici di rivoluzione etc.) NON sono spline / NURBS convertite ma sono sempre trattati analiticamente (con la loro formulazione matematica) e anche nella loro formulazione originale esportate / salvate.
Creazione e analisi geometrica degli Oggetti
dialogo interattivo funzioni (selezioni ..)
Compilazione automatica e link al programma
Ulteriori informazioni possono essere trovate nel file xa/gCAD3D_prog_de.txt. .
Automazione:
gCAD3D puo' caricare automaticamente un modello o un plug-in programma, i parametri necessari sono riportati nel file gCAD3D_prog_de.txt, Capitolo Primi Passi..
Inizio Programma:
Quando il programma si avvia automaticamente
E' possibile modificare questi file tramite qualsiasi programma.
Il nuovo nome del file verra' dato alla chiusura del programma.
Settaggi:
Le opzioni per il programma (Comando Stampa, Browser) sono contenuti nel file
La dimensione del carattere puo' essere modificata nel file lt;base>/xa/xa.rc .
Esempi sono contenuti nella dirsctory File/Open
<base>/xa/dir.lst (Format: "symbolischerPfadname
/vollerPfadname/").
Le funzioni interattive di seguito elencate
Standards/Directories (Schreibrecht ?)
I valori standard per dimensione del buffer, dimensione del modello, dimensione del testo, si trovano nel seguente file <base>/xa/gCAD3D.rc.
Le funzioni interative seguenti
Standards/Tolerances e Standards/Text.
Il file di setup per l'export postscript e' <base>/xa/psv.setup.
Il settaggio della dimensione massima del modello includera' il settaggio delle tolleranze.
Modify
L'intero modello sara' ricalcolato in tempo reale.
Reset
I dati contenuti in <base>/xa/gCAD3D.rc) verranno ridefiniti automaticamente.
È possibile utilizzare il testo predefinito di dimensioni e variarlo solo per un fattore di scala.
Se non e' esplicitata la dimensione del testo definito il valore di default sara' - Note .
Modify
L'intero modello sara' ricalcolato in tempo reale.
Reset
I dati contenuti in <base>/xa/gCAD3D.rc) verranno ridefiniti automaticamente.
Alle Verzeichnisse, auf
die mit File/OpenModel zugegriffen werden soll, müssen hier
definiert werden.
Es muss für jedes Verzeichnis eine
symbolische Bezeichnug definiert werden (kann frei gewählt
werden).
Beim Laden von Modellen innerhalb der Programme muss das
Symbol verwendet werden.
Es wird der Systemeditor mit Datei <base>/xa/dir.lst aufgerufen.
Im File/OpenModel - Dialog kann mit dem Button "<<---" das Verzeichnis gewechselt werden.
Beispiel
Unix:
Data
/usr/home/gCAD3D/dat/
IGS
/mnt/win_d/gCAD3D/Models/igs/
Beispiel
MS-Windows:
Data
F:\Programme\gCAD3D\dat\
IGS
F:\Models\gCAD3D\igs\
CD0 D:\
Das symbolische
Verzeichnis '.' wird durch das momentan aktive Verzeichnis
ersetzt
(z.B. um Texturen aus dem gleichen Verzeichnis wie das native Model zu laden).
Im Verzeichnis <base>/tmp/ltyp.rc befindet sich die
Linientypentabelle.
Die Originaldatei ist <base>/xa/ltyp.rc.
Es wird der Systemeditor mit dieser Datei aufgerufen, es können zusätzliche Linientypen (bis dzt max 50) definiert werden.
Diese Tabelle ist für
alle momentan geladenen Submodelle gültig.
Diese Tabelle wird
nicht mit den Modellen abgespeichert; im Modell wird nur der
Tabellenindex gespeichert.
Beispiel:
Die Objekte L20 und L21 sind
dünn,strichliert:
Linetyp 2 (G2) ist definiert in Datei
ltyp.rc mit:
2 0 2 1 (Index 2, Farbe Standard (0=schwarz),
Linetyp strichliert (2), Liniendicke Standard (1=dünn)).
-
Laden sie ein Modell (File / Open Model / sample1.gcad, OK).
-
END - Button:
Es wird das gesamte Programm, beginnend in der ersten Zeile, bis zum Dateiende abgearbeitet. Dadurch erst wird auch die Geometrie dargestellt.
-
Scal.All - Button:
Vergrößerung und Darstellungsmittelpunkt werden optimiert.
Weiter mit
Ansicht
verschieben, vergrössern, drehen.
- Funktionen zur
Erzeugung von Kreisen tangential an Polygon, Ellipse, Spline
fehlen.
(Kreise können dzt nur tangential
an Linien und Kreise erzeugt werden).
- Funktionen zur
Erzeugung von Kreisen tangential an drei Objekte fehlen.
(dzt nur Kreis durch 3 Punkte).
- Funktionen zur Erzeugung von Tangenten an Ellipse und B-Spline fehlen noch.
- Curve = Intersection Surface X Surface fehlt noch.
- Project und Mirror dzt nur für einzelne Objekte, nicht für CCV (dzt nur Translate).
- Zur Modifikation von B-Splines ist ein interaktiver Editor zu erstellen
- Transformation von
3D-Text: werden dzt immer in die X-Y-Ebene gesetzt.
- NC:
NC-Bearbeitungen werden grafisch noch nicht ins aktive Referenzsystem
transformiert.
- NC-Funktionen für Submodels
(NC-Unterprogramme) noch nicht fertig implementiert
- Funktionen zur Erzeugung von Schnittkurven von Flächen noch nicht fertig implem.
- Funktion zum interaktiven Positionieren von subModellen bis zu einer Kontaktposition
- Zeichnungsableitung 2D -> 3D noch nicht implementiert.
- bei Schraffuren keine Inseln möglich
- Die Programmierschnittstellen sind nur teilweise dokumentiert.
Autoren:
Franz Reiter |
franz.reiter@cadcam.co.at |
Thomas Backmeister |
t.backmeister@gmx.at |
Karl Sauer |
|
Vielen Dank auch den Entwicklungsteams von Gtk, Mesa, Vim,
Gcc und Gdb.
Primäre Entwicklungsplattform ist Linux;
jede Version wird nach MS-Windows portiert.
Wenn Sie zu
weiteren Funktionen oder zur Dokumentation beitragen möchten,
schicken Sie bitte eine Mail an franz.reiter@cadcam.co.at.
Verschieben
der
gesamten Grafik durch Drücken der Shifttaste und verschieben der
Maus.
(Halten Sie die Shifttaste gedrückt, keine Maustaste
drücken).
3D-Rotation
der gesamten Grafik
durch Drücken der Controltaste ("Strg") und
verschieben der Maus.
Horizontales verschieben der Maus dreht den
Teil um seine Z-Achse.
Der Drehmittelpunkt ist immer automatisch
der Bildschirmmittelpunkt.
Vertikales verschieben der Maus kippt
den Teil in der Bildebene.
Siehe: Bestimmen
der Z-Ebene der Drehung.
Vergrößern /
Verkleinern
der gesamten Grafik durch Drücken der
Shifttaste und der Controltaste.
Von oben nach unten verschieben
bewirkt ein Vergrössern.
Scal.All -
Button:
bewirkt ein Zurücksetzen der Grafikverschiebung und
Vergrößerung auf einen optimalen Wert.
Es werden die
Vergrösserung und der Darstellungsmittelpunkt automatisch
berechnet.
Scal.Fix - Button:
Einstellen einer
fixen, vordefinierten Vergrösserung, entsprechend dem Wert
MODSIZ (ungefähre Maximalgröße des Modells).
Standardwert ist 500 mm.
Änderung MODSIZ durch Funktion
Standards / Tolerances oder durch Command
MODSIZ <wert>
Clear
- Button:
Zum Löschen der gesamten Grafik. Es können nun
im STEP - Mode einzelne Objekte dargestellt werden;
Die momentan aktive
Ebene für das interaktive Drehen wird durch ein gelbes Rechteck
angezeigt.
Verändern durch:
Selektion eines Vertexpunktes als neuen Mittelpunkt (Vertices sind Polygonpunkte, alle Kurven / Kreise werden als Polygone dargestellt. Linien jedoch haben nur an den Endpunkten Vertices). Oder -
Eingabe des neuen Z-Wertes in das Z-Eingabefeld (neben den Ausgabefeldern für die aktuelle Cursorposition, mit Return abschliessen) oder:
selektieren der
neuen Darstellungsebene:
Schieben Sie jenen Punkt, um den nun
gedreht werden soll, genau in die Bildschirmmitte.
Checkbutton
RotCen aktivieren.
Nun Ansicht drehen; der rote Punkt in
der Bildschirmmitte wird zu einer Kette von Punkten.
Nun
jenen roten Punkt auswählen, der dem gewünschten Drehpunkt
am nächsten liegt.
Die Darstellungsebene
(erkennbar durch ein gelbes Rechteck) wird verschoben, die Drehachse
für das interaktive Drehen wird in die definierte Ebene
verlegt.
TopView -
Draufsicht (Ansicht X-Y)
FrontView - Seitenansicht (Ansicht
X-Z)
SideView - Seitenansicht (Ansicht Y-Z)
AxoView
- Axonometrische Ansicht
Save / Restore
Die
momentane Ansicht kann gespeichert / zurückgesetzt
werden.
Names:
Darstellung der Namenstexte
der Elemente; also zB "P20".
Darstellung der
Richtung aller Bearbeitungswege durch Richtungspfeile.
NC-Text:
Darstellung der NC-Hilfsfunktionen (als Text) an den jeweiligen
Positionen.
Dargestellt werden z.B. alle Insert-Texte,
STOP, ....
Hide: es werden
beliebige graf. Objekte ausgeblendet.
View: es werden
nur alle momentan ausgeblendeten Elemente angezeigt; selektieren Sie
Elemente, die wieder dargestellt werden sollen.
Der Dateityp unkomprimierter Dateien ist .gcad; Der Dateityp komprimierter Dateien ist .gcaz. Die Komprimierung erfolgt mit "gzip -qc {unkompr.} > {kompr.}" Die DeKomprimierung erfolgt mit "gzip -dqc {kompr.} > {unkompr.}" Somit kann man in Unix und MS-Windows Modelle auch mit der Standardfunktion gzip komprimieren / dekomprimieren. Die Kompressionsrate ist etwa 70 %. ------------------ the filetype for uncompressed files is .gcad; the filetype for the compressed files is .gcaz; compression is done with "gzip -qc> " decompression is done with "gzip -dqc > " This works for Unix and MS-Win and you can compress and decompress the models at any time without a cad-system. The compressionrate is around 70 percent.
File / New
Modelspace
und alle Submodelspaces löschen.
File / Open
Model
Laden
oder importieren eines Modells. Dateien werden entsprechend
dem Filetyp
automatisch umgewandelt,
für
Mockup-Modelle und Bitmaps wird ein Import-Befehl
generiert.
Verzeichnis: siehe Standards/
Directories.
Import
/ Export DXF
Import / Export
Iges
Import Step
Import STL
(Ascii)
Import 3DS
Import LWO
Mockup-Modelle:
Mockup-Modelle
sind fertig tesselierte Modelle, die besonders schnell importiert
werden.
Ein Modell kann als Mockup-Modell in den Formaten VRML-1
oder WaveFront-OBJ oder TESS importiert / exportiert werden. Ein
Mockup-Modell selbst kann nicht mehr exportiert
werden.
Mockup-Modelle können nur aus Verzeichnissen, die mit
einem symbolischen Pfad definiert sind, importiert werden.
Import
/ Export VRML-1
Export VRML-2
(VRML-97)
Import
/ Export WaveFront-OBJ
Import
/ Export TESS
Bitmap-Modelle:
Damit
können Pixel-Images in den 3D-Raum geladen werden.
File / Open Model new
Dir
Laden eines Modells aus einem allgemeinen
Verzeichnis.
Nach der Dateiauswahl wird ein symbolischer
Pfadname abgefragt, der dann bei den Standardverzeichnissen
eingetragen wird.
Verzeichnis: siehe Standards/
Directories.
File /
Insert:
SubModelle werden
nicht gelöscht.
Mockup-Modelle (wrl): Es wird ein
entsprechender Ladebefehl zugefügt.
Iges,Step-Modelle: die
Modelldaten werden an das
bestehende Modell zugefügt.
Native
Modelle (.gcad): werden derzeit als Hauptmodell geladen.
Mehrere native Modelle laden:
Insert, dann
subModels/move_main_-->_new-subModel, internes subModel
positionieren.
Import
Mockup native
Schalterstellung EIN: das nachfolgend
geladene Modell (dzt nur OBJ) wird als native Modell geladen.
Damit
kann es wieder zB als WRL oder TESS exportiert
werden.
Schalterstellung AUS: (Standard) Nachfolgend
wird ein obj-Modell als Mockup-Modell geladen (wird somit besonders
schnell galden, kann aber nicht mehr verändert / exportiert
werden).
Save
Model
abspeichern (nur
native) mit dem aktuellen Modelnamen.
Für native
Daten sollte Dateiendung .gcad
verwendet werden.
Native Daten sind die im Editfenster angezeigten
Texte).
Save Model
as
abspeichern mit einem
neuen Modelnamen. Das Format wird
entsprechend dem Filetyp gewählt.
Bereits tesselierte Modelle
(Mockups) können nicht mehr tesseliert werden.
Es wird das
Hauptmodell mit allen internen Submodellen gespeichert.
Save Model new
Dir
abspeichern in einem allgemeinen Verzeichnis.
Liste der unterstützten DXF - Objekttypen:
Typ |
Import |
Export |
POINT |
X |
X |
VERTEX |
X |
X |
LINE |
X |
X |
CIRCLE |
X |
X |
ARC |
X |
X |
POLYLINE |
X |
X |
3DLINE |
X |
X |
TEXT |
X |
X |
3DFACE |
X |
X |
DIMENSION |
X |
X |
HATCH |
- |
- |
ELLIPSE |
X |
- |
LWPOLYLINE |
X |
- |
MTEXT |
X |
- |
BLOCK/INSERT |
- |
- |
Ellipsen und
B-Spline-Kurven werden als POLYLINE ausgegeben.
Gedimmte
("DIM") und mit DRAW OFF ausgeblendete Objekte werden nicht
exportiert.
Export: es werden die
tesselierten Surfaces als 3DFACE's ausgegeben.
(Anzahl 3-Ecke: Standards/Tolerances).
Liste
der unterstützten Iges - Objekttypen:
Typ |
|
Import |
Export |
Punkt |
116 |
X |
X |
Linie |
110 |
X |
X |
Kreis |
100 |
X |
X |
Par.Spline |
112 |
X |
X |
B-Spl.Kurve |
126 |
X |
X |
B-Spl.Fläche |
128 |
X |
X |
Polylines |
106 Form 11,12 |
X |
X |
CompositeCurve |
102 |
X |
X |
Text |
212 |
X |
X |
Ebene |
108 |
X |
X |
Ellipse |
104 Form 1 |
X4 |
X |
Subfig.Def. |
308 |
X |
X |
Subfig.Ref. |
408 |
X |
X |
RuledSurface |
118 |
X |
X |
Rev.Surface |
120 |
X |
X |
Zylinderfläche |
122 |
X |
5) |
CurveOnSurf |
142 |
X |
X |
TrimmedSurf. |
144 |
X |
X |
X4
dzt noch nicht: Hyperbel, Parabel (Form 2, 3).
5)
Ausgabe als Rev.Surf oder RuledSurf.
Getestet mit CATIA-V4
und CATIA-V5 (V5: Subfigures werden aufgelöst
(kopiert)).
Referenzen auf Externe SubModels werden noch nicht
exportiert.
Gedimmte ("DIM") und mit DRAW OFF
ausgeblendete Objekte werden nicht exportiert.
Es können STEP
ISO-10303-21 - AP203 - AP214 - Files importiert werden.
Die
Import-Funktionen basieren nicht auf den Express-Funktionen.
Getestet
mit CATIA-V4 und CATIA-V5.
VRML-1-Modelle werden als Mockups (Modell nicht veränderbar) importiert / exportiert.
EXPORT:
-
kann Assemblies (subModels) exportieren
- kann
Mockup-Submodelle (WRL/OBJ/TESS) nicht reexportieren
- kann Assemblies(subModels) exportieren
- kann Mockup-Submodelle (WRL/OBJ/TESS) nicht reexportieren
- kann Texturen noch nicht exportieren
Es werden derzeit nur
OBJ-Ascii-Dateien importiert / exportiert.
OBJ-Dateien können
als Modelle (veränderbar) und Mockup-Modelle (nicht veränderbar)
geladen werden.
Es werden nur die
folgenden Objekttypen importiert / exportiert:
v
(Vertices)
f (Faces)
EXPORT:
-
kann dzt exportierte Submodelle nicht positionieren
- kann
Mockup-Submodelle (WRL/OBJ/TESS) nicht reexportieren
Es werden die Binärdaten
der fertig tesselierten Flächen in eine Datei mit Dateityp .tess
ausgegeben (also nur Mockup-Modelldaten).
Beschreibung Dateiformat
in Datei gCAD3D_prog_de.txt.
Demo-Programm folgt.
EXPORT:
- kann
dzt nur single Models (keine subModels) exportieren
- kann
Mockup-Submodelle (WRL/OBJ/TESS) nicht reexportieren
Bitmaps werden im normal
zur Ansichtsfläche dargestellt (2D-Raum), werden am linken
unteren Eckpunkt im 3D-Raum positioniert.
Bitmaps werden dynamisch
oder fix skaliert.
Es können Files im Format JPG oder BMP importiert werden.
Ausgabe der
NC-Bearbeitungscodes in Datei <base>/tmp/pp.iso.
Weitere Postprozessoren auf Anfrage.
Auswahl
Ausgabformat:
PS (ab V.076 Vektorformat)
PCL5 (GL-Format)
HP-GL
Auswahl Format:
A4 oder A3 (nur für Ausgabeformat PCL5)
Auswahl Funktion:
mit Viewer anzeigen (nur für Ausgabeformat PS, voreingestellt ist der Postscriptviewer gv)
ausgeben in Datei (voreingestellt ist Dateiname /tmp/print.dat)
direkt ausdrucken (voreingestellt ist Command "lpr -l -P<Defaltdrucker>")
Es
werden keine schattierten Flächen ausgegeben (dazu kann zB
Programm ksnapshot benutzt werden).
Funktionsweise:
Es
wird eine Zwischendatei <base>/tmp/print.tmp erzeugt; diese
wird dann in das gewählte Ausgabeformat umgewandelt.
Die
Ausgabe kann um 90 Grad gedreht werden, skaliert und (mit Offset)
verschoben werden.
Diese
Buttons bewirken die Bearbeitung bestimmter Programmteile. Die
Verarbeitung bewirkt die Darstellung der Objekte.
GO
Mit
dem GO - Button wird das gesamte Programm, beginnend in der ersten
Zeile, bis zur aktuellen Zeile abgearbeitet.
Mit der
ESCAPE-Taste kann der Ablauf unterbrochen werden.
STEP
Mit
dem STEP - Button können die APT-Zeilen einzeln ausgeführt
werden.
Zum Darstellen eines einzelnen Elementes aktivieren sie
CLEAR, dann STEP; es wird nur die aktuelle Zeile dargestellt.
END
Mit
dem END - Button wird das gesamte Programm, beginnend in der ersten
Zeile, bis zum Dateiende abgearbeitet.
Mit der ESCAPE-Taste
kann der Ablauf unterbrochen werden.
gCAD startet in diesem
Modus.
Im Modus VWR ("Viewer") können Objekte
nicht modifiziert / gelöscht werden.
Von selektierten
Objekten werden nur die Objektnamen angezeigt.
Der Toolbar und der Messagebar können ausgeblendet werden (Menü Options).
Die Standardwerte (Modelsize ..) können verändert / abgespeichert werden.
Aktivieren
Sie die CAD-Checkbox.
Erzeugen von
Objekten:
Selektieren sie eine Funktion. Es werden nun
alle erforderlichen Eingabefelder angezeigt; die Eingaben erfolgen
durch Selektion, Indicate oder mit der Tastatur. (Indicate:
Anzeige einer Position mit der Maus; linke Maustaste).
Schliessen
Sie Tastatureingaben mit der Tab-Taste ab.
Sind alle
erforderlichen Eingaben gemacht, wird das Element angezeigt.
Alle
Eingabewerte können noch verändert werden, die Anzeige wird
sofort korrigiert (die Werte werden mit der Tab-Taste übergeben).
Mit
der Esc-Taste wird das zuvor belegte Eingabefeld gelöscht.
Mit
dem OK-Button oder der Eingabetaste ("Return") oder
RechteMaustaste wird das Objekt erzeugt.
Bei der Eingabe von
Vektoren, Variablen oder Modifikatoren können Sie mit Hilfe der
PageUp oder PageDown - Tasten aus den vorhandenen Werten
auswählen.
Modifikation von
Objekten:
Selektieren Sie die Checkbox S/M/DEL, dann
selektieren sie das geometrische Objekt.
Wenn Sie nun Modify
selektieren (oder rechte Maustaste) wird die erzeugende CAD-Funktion
gerufen und alle erzeugenden Parameter in die Eingabeboxen
eingetragen.
Als
aktive Funktion wird "MODIFY" angezeigt.
Modifizieren
Sie die Parameter (- wie Funktion Erzeugen).
Button Exit (oder
Ctrl rechte Maustaste) schalten zurück in die Funktion "ADD"
(hintanfügen).
Selektion
von Objekten:
Im Menü "Select" gibt es
folgende Hilfsfunktionen:
PT <-- ObjectPoint
Es wird der dem Cursor nächstliegende Objektpunkt
selektiert (zB Startpunkt einer Linie)
PT <-- Vertex
Es werden die Koordinaten des dem Cursor nächstliegenden
Vertexpunkts ausgegeben
PT <-- Position
Es werden die Koordinaten des Cursor auf der aktiven
Konstruktionsebene ausgegeben
Löschen von
Objekten:
Aktivieren Sie S/M/DEL, selektieren Sie das zu
löschende Objekt; drücken Sie Taste "Entf"
(Delete).
Es werden nun alle vom selektierten Objekt abhängigen
Objekte gezeigt; wird kein weiteres abhängiges Objekt mehr
gefunden, werden alle gelöscht.
Wieder zurückholen mit Esc .
Entfernen aller gelöschten Zeilen mit "Alt" + "Esc" (Modify / APT-Clean).
Checkbox
newObj:
Nur für den Funktionsblock
CUT/Translate/Project/Mirror.
Modifiziert das Objekt
(Eingabeobjekt Nr. 1) oder erstellt ein neues, modifiziertes Objekt.
LineEdit-Box
(zur Eingabe von Konturen / Punkteketten):
durch setzen der
Cursorposition (ins Textfenster klicken) wird die Grafik bis zur
Cursorposition dargestellt.
Erzeugen von
Objekten:
Eingabe der Programmcodes im Editfenster.
Die
Objektheader werden mit Alt-P (Punkt) bzw Alt-L (Linie), Alt-C
(Kreis) erzeugt (nur am Beginn einer neuen Zeile).
Die rechte
Maustaste impliziert am Dateiende ein CR (die Return-Taste).
Es
können folgende Editfunktionen benutzt werden:
Selektieren
mit ShiftCursorLinks oder rechts;
Selektieren mit der Maus, inur
Unix: mittlere Maustaste zum Einfügen;
Ctrl X zum
Ausschneiden und Kopieren
Ctrl C zum Kopieren;
Ctrl V zum
Ausgeben.
Taste Delete ("Entf") zum Löschen;
mit
Ctrl-Entf/Delete können gelöschte Programmcodes wieder
eingefügt werden.
Die Esc-Taste löscht die zuletzt
eingegebene Zeile.
Suchen von Objekten: S/M/DEL.
Modifikation
von Objekten:
Selektieren Sie die Checkbox S/M/DEL, dann
selektieren sie das geometrische Objekt.
Wenn Sie nun Modify
selektieren (oder rechte Maustaste) wird der Programmcode selektiert
dargestellt und der Cursor gesetzt. Die Korrektur muss manuell
erfolgen.
Löschen
von Objekten: Löschen.
Programmcode erzeugen:
Beispiel:
Geben Sie
mit der Tastatur ein:
Alt-P (erzeugt den Objektheader
"P20=");
Linke Maustaste im Grafikfenster (erzeugt
" P(100 100)");
Rechte Maustaste (impliziert
Return-Taste; der entsprechende Punkt wird angezeigt).
P20=P(100
100)
Programmcodes: siehe Programmfunktionen.
In MAN wird (von gtk) charset UTF8 verwendet.
Achtung: Parametrische Definition für Punkte werden nur im Modus CAD erzeugt !
Selektieren Sie die Checkbox S/M/DEL und das geometrische Objekt -
oder Selektieren Sie das Objekt mit gedrückter Control-Taste;
Es wird nun das folgende Menü angezeigt:
<<--prv |
zeigt alle DefinitionLines, die zuletzt generierten zuerst |
nxt-->> |
zeigt alle vom selektierten Objekt abhängigen Objekte (dependant) |
Modify |
Obj. Modifizieren / Return-Taste od. rechte-Maustaste |
Delete |
Obj. löschen / Lösch-Taste (Entf/Delete) |
Done |
S/M/DEL beenden / Ctrl-rechte-Maustaste |
Delete:
Es wird das Objekt und alle seine Hilfsobjekte angezeigt.
Es muss auch jedes einzelne Hilfsobjekt explizit mit
der Lösch-Taste entfernt werden.
Zurückholen der gelöschten Objekte mit Taste Ctrl-Y.
Beispiel:
1 P1=..
2 P2=..
3 L1= P1 P2
4 L1=CUT L1 L2
Objekt L1 hat 2 DefinitionLines mit je 2 Hilfsobjekten; die Zeilen 3 und 4. Beide sind abhängig von den Punkte P1 und P2.
Surface-Style
shaded
symbolic (es werden nur Aussenkonturen
dargestellt)
Surface-Color
define Color (Definition der aktiven Color)
change Color
(es wird die aktive Color übernommen)
remove Color (es
wird wieder die Default-Color (Standards/Color) übernommen)
Surface-Transparenz
solid
50% - transparent
transparent (voll
transparent)
ANALYZE
- Funktionen:
Analyze
Point / Posi.
Anzeige
der Position von Punkten auf Linie, Polygon, Kreis (Endpunkt,
Eckpunkte).
Analyze
Obj
Es
werden die geometr. Parameter des selektierten Objekts
angezeigt.
Analyze
Dist. Point-Point
Es
wird der Abstand zwischen von 2 Punkten angezeigt.
Analyze
Dist. Point-Object
Es
wird der Normalabstand von Punkt - Objekte angezeigt. Derzeit
nur:
Punkt/Linie
- Normalabstand
Punkt/Kreis
- Normalabstand
Analyze
Vertex
Anzeige
der Position der Vertexpunkte (der Punkte der 3D-Darstellung; keine
analytische Genauigkeit; abhängig vom Darstellungsmaßstab
(Scale))
Alle NC-Funktionen
sind entweder im Menü NC-Tech oder auch als Direktcommands (Man)
verfügbar.
Die momentan aktive
NC-Bearbeitungsposition wird durch eine rote senkrechte Linie
angezeigt.
Im Programmverlauf wird die aktuelle Position immer
im Punkt P0 gespeichert.
Dieser Punkt kann normal benutzt werden;
Beispiel:
PRI P0
# ausdrucken der aktuellen Position
P21[P0
P20 12]
# vom momentanen Punkt weg in Richtung P20 12 mm weit
gehen
FROM
Erzeugen einer FROM -
Befehlszeile. Selektieren oder indizieren
Sie einen
Punkt.
Die FROM-Position wird als Dreieck dargestellt, die
aktuelle Bearbeitungsposition wird mit einem Kreuz
dargestellt.
RAPID
Erzeugen einer RAPID -
Befehlszeile. Selektieren oder indizieren
Sie einen
Punkt.
TEC
Eine
Liste der Makroprogrammfiles. Vor dem Start eines NC-Programms muss
(mindestens ein) Makrofile selektiert werden. Die in den gewählten
Makrofiles enthaltenen Makroprogramme werden im folgenden in der
Liste Work angezeigt.
(Makrofiles:
<base>/wc/<macname>.mac).
Program
Der
NC-Programmname. In jedem Modell können mehrere NC-Programme
definiert werden.
Befindet sich noch kein NC-Programm im Modell,
so muss eine neuer Programmname definiert werden. Es muss zuvor
mindestens ein Makroprogrammfile (aus Liste TEC) selektiert worden
sein.
Work
Eine Liste aller geladenen Zyklen. Wird
ein Zyklus selektiert, so werden alle für diesen Zyklus
erforderlichen Parameter in eigenen Eingabfeldern angefordert.
Wird
eine Eingabe nicht automatisch zugeordnet, muss der Cursor vorher in
das entsprechende Eigabefeld gesetzt werden (Beispiel: Cursor in das
Eingabfeld "Radius" setzen, Kreis selektieren).
Der
erste Zyklus sollte der FROM-Startpunkt sein.
Contour
Eine
Liste der im Modell verfügbaren Konturen (S20 ..). Bei Selektion
wird der gewählte Konturname an ein Eingabefeld "Konturname"
übergeben.
OK (oder rechte Maustaste oder
Entertaste)
den aktuellen Zyklus speichern.
prev /
next
aktiviert den vorherigen / nächsten Zyklus; es
könnenn nun die Parameter geändert werden; Zyklus
abspeichern (überschreiben) mit OK.
RUN
Mit RUN
kann jederzeit das gesamte NC-Programm dargestellt
werden.
List
zeigt eine Liste aller aktiven Zyklen
mit allen Parametern.
Ins
Zyklus einfügen (vor
den momentan aktiven Zyklus),
Del
den momentan
aktiven Zyklus löschen.
PP
startet den
Postprozessorlauf. Im ersten Schritt (auch ohne installierten
Postprozessoren) wird eine NC-ISO-Datei erzeugt (Datei
<base>/tmp/pp.iso).
Save/Exit
beenden /
abspeichern des gesamten Programms im Modell.
Erste
Schritte - NC-Tech (Kurzbeispiel):
- aus Liste
TEC "Demo1" selektieren
- NewProg selektieren, "prog1"
eingeben, OK.
- aus Liste Work "Kreis"
selektieren,
- ins Eingabefeld "Startpunkt" die
Koordinaten 30,30 eingeben, Entertaste drücken
- aus Liste
Work "Kreis" selektieren,
- ins Eingabefeld
"Startpunkt" die Koordinaten 60,30 eingeben, Entertaste
drücken
- RUN-Button drücken
- prev-Button drücken
(retour zu Zyklus 2)
- Koordinaten 60,30 in 80,30 verändern,
Entertaste drücken, RUN drücken.
- shade - Checkbox
selektieren
- PP (Postprozessorlauf), Beenden (ISO-Code nun in
tmp/pp.iso)
- Save/Exit, OK; verlassen mit Checkbox
Man.
Modifizieren von NC-Prog "prog1":
- Checkbox
NC-Tech,
- aus Liste Program "prog1" selektieren,
-
RUN, prev, ...
Definitionszeilen:
A=Area
(Fläche)
B=Body (Solid)
C=Circle (Kreis)
D=Direction
(Vektor)
I=Interaktion
L=Line
M=Model, Submodel,
Mockup-Model
N=Note, Tag, Bitmap-Image
P=Point
R=Refsys
(Referenzsystem)
S=Spline (Parametr., B-Spline, Polygon,
Kegelschnitte)
T=Transformation (Translation od
Rotation)
V=Variable (numer. Wert)
- Gross- oder
Kleinschreibung egal
Modifikator: eine Zahl (wird im CAD-Modus durch die PageUp und PageDown-Tastebereitgestellt)
Beispiele:
MOD(1)
MOD(2)
Grundlagen 2D - 3D
Texte/Symbole/Image
Vermaßung
Abbildungen (JPG/BMP-Bitmaps)
Punkte
Linien
Vektor - Richtung
Transformationen
Kreise
Kurven
(Ellipse, Polygon, B-Spline, Kontur)
Achsensysteme - Ebenen
Flächen
Solids
Models
Geom.Modifikationen
(Cut (Trim), Intersect, Transform, Project, Mirror)
Variablen
Löschen von
geometr. Objekten:
durch eine leere Definitionsangabe; zB
Löschen des Punkt Nr. 12:
P12=
Grundlagen 2D - 3D
Die Raumgrösse (Standardwert ist 300 mm)
wird zum Errechnen von Toleranzen benutzt (Kurvendarstellung,
Identische-Punkte-Toleranz usw). Raumgrösse ändern auf
10m:
MODSIZ 10000
Defaultwert in der Datei <base>/xa/gCAD3D.rc.
Die aktuelle
Arbeitsebene kann im 3D-Raum mit Hilfe eines Referenzsystemes
definiert werden. Sobald dieses aktiviert wird, werden alle ab nun
definierten 2D-Koordinaten in diese Ebene transformiert.
Die
Referenzsysteme erhalten eine Nummer. Referenzsystem Nr. 0 ist das
Hauptachsensystem und kann nicht definiert / verändert
werden.
Jedes Referenzsystem sollte nur einmal definiert und nicht
mehr verändert werden
(dies würde Fehler beim
EXPORT verursachen).
Beispiel:
# Definition
Achsensystem Nr.1
R1=Z(100)
# Aktivierung Achsensystem
Nr.1
R1
# Punkt (wird ins aktive Achsensystem übertragen
!)
P1=100 100
# Rücksetzen
Achsensystem
R0
Definition Achsensystem ist ident mit
Definition Ebene. Siehe Achsensysteme.
Texte und Vermaßung verwenden den Kennbuchstaben N.
Die
Schriftgröße für Texte und Vermaßung
wird definiert durch
DEFTX <Textsiz> <DimTextSiz>
<TextGeneralScale> <AnzahlNachkommstellen>
oder
interaktiv in Standards/Text. (Defaultwerte in der Datei
<base>/xa/gCAD3D.rc).
2D-Texte:
Fixe
Textgröße.
Immer in Draufsicht.
Als Sonderzeichen
für 2D-Texte sind derzeit nur "[n"
(Zeilentrennzeichen) verwendbar.
Selektieren von 2D-Texten ist
derzeit nur am linken unteren Startpunkt des Textfeldes möglich.
3D-Texte:
Textgröße
skalierbar und entsprechend den Standards/Text.
Sonderzeichen lt.
Tabelle
Sonderzeichen:
Ein
Sonderzeichen wird durch eine Folge von 2 Zeichen
generiert.
[d
Durchmesserzeichen
[g
Gradzeichen (Winkel)
[+
+- Zeichen
[/
hochgestellt
[\
tiefgestellt
[n
neue Zeile (Return, CR)
[%
wird durch Standardtext ersetzt. Wenn im Text kein [% enthalten
ist,
wird der Standardtext ganz an den Textbeginn gestellt.
[-
keinen Standardtext einfuegen.
[[
ein "["
[0 bis [9 nur N=DIM3 und
N=LDRP: Anzahl Nachkommastellen der MassZahlen
(muss am Beginn des Textblocks
stehen)
[V20] expandieren einer numer.
Variablen (V20 im Beispiel)
Beispiel:
#
"Winkel 60 <Gradzeichen> <"+0.123"
<hochgestellt> "0.5"<tiefgestellt>>"
N20=P(100
0) "Winkel 60[g [/+0.123[\-0.5"
3D-Text mit variabler Grösse, Richtung und Sonderzeichen:
N#
= Textpunkt Size [Richtung] "Text"
Defaultrichtung ist 0
Grad. Keine Hilfslinien.
Beispiel:
N10=P5 "Text an
Punkt P5"
N11=P(100 100) 10 ANG(15) "Text Size 10,
Richtung 15 Grad"
TXG Textpunkt
SIZE, RICHTUNG, TEXT
(Diese Texte werden nicht gespeichert - nicht
exportiert).
TXA Textpunkt "Text"
(Diese
Texte werden nicht gespeichert - nicht exportiert).
Text mit 1 od 2
2D-Hilfslinien; mit oder ohne Pfeilsymbol.
N=LDR
StartpunktLinie EndPunkt1 [EndPunkt2] [Textwinkel] [PfeilTyp]
[Text]
PfeilTyp: 0=kein Pfeilsymbol, 1-3
Pfeilsymbol
Hilfslinie und Kreis sind (dzt) immer in der
XY-Ebene.
Beispiel:
N21=LDR P(50 10 0) P(100 50 0)
ANG(0) 0 "abc"
Text mit Kreis und
2D-Hilfslinie.
N=LDRC TextPosition
[Linienstartpunkt] [Linetyp] [Text]
Es wird eine Line von
Linienstartpunkt nach TextPosition erzeugt,
an TextPosition
ein Kreis, in dem der Text ausgegebn wird.
Hilfslinie und
Kreis sind (dzt) immer in der XY-Ebene.
Beispiel:
N22=LDRC
P(150 50 50) P(100 10 0) "P21"
2D-Text/Textblock
mit Hilfslinie.
N=TAG TextPosition
[Linienstartpunkt] [color] [Text]
color - Textblockfarbe
(keine Angabe: nur Text, kein Block)
0 = schwarz
1 = DefCol
2 = rot
3 = grün
4 = blau
5 = gelb
6 = violett
7 = hellblau
8 = weiss
Beispiel:
N23=TAG
P(150 50 50) P(100 10 0) "P21"
N24=TAG P(250
50 50) P(200 0 0) VAL(7) "N24[nP25"
Symbol.
N=LDRS
SymbolPosition [symbolTyp] [color] [Endpoint Vector]
symbolTyp
0 = Stern klein,
1 =
Dreieck klein
2 = Kreis klein
3 =
Rechteck gross
4 = Vektor normiert (immer gleich
lang)
5 = Vektor (mit korrekter Laenge)
Endpoint_Vector:
nur fuer symbolTyp 4 und
5
Beispiel:
N25=LDRS P(350 50 50) 1 2
Image
N=IMG
ImagePosition Filename [scale]
Es wird ein (BMP-)Image
dargestellt. Immer normal zum Betrachter.
Beispiel:
N32=IMG
P(500 0 0) "Data/sample_bmp1.bmp" VAL(0.5)
3D-Punktkoordinaten
(Kote; mit 3D-Hilfslinie, 3D-Text mit Sonderzeichen)
N=LDRP
TextPosition [Punkt] [Linetyp] ["ZusatzText"]
Es
wird eine Line von <Punkt> nach <TextPosition>
erzeugt;
an der <TextPosition> werden die
X/Y/Z-Kordinaten von <Punkt> ausgegeben.
Beispiel:
Position von Punkt 20 mit 3 Nachkommastellen:
N20 = LDRP
P(50 50 50) P(10 10 0.12345) "[3"
3D_Maß:
N#
= DIM3 p1 p2 p3 [DimPlane] ["Zusatztext"]
p1,p2 die
Punkte
p3 Position des Textblocks
DimPlane
X oder Y oder Z oder keine ('P' = Default = parallel)
keine
DimPlane: die Textebene geht durch die Punkt1 p1 und p2 und
liegt
normal zum Betrachter.
X
es wird der Abstand von p1-p2 auf der X-Achse vermaßt;
der Texblock liegt in der X-Y oder X-Z-Ebene.
Y
es wird der Abstand von p1-p2 auf der Y-Achse vermaßt;
der Texblock liegt in der X-Y oder Y-Z-Ebene.
Z
es wird der Abstand von p1-p2 auf der Z-Achse vermaßt;
der Texblock liegt in der Y-Z oder X-Z-Ebene.
Für alle Maßtexte
wird jene Textebene ausgewaehlt, die rechtwinkeliger zum
Betrachter liegt.
Linearmaß
2D:
N# = DIM Punkt1 Punkt2 Textpunkt [Winkel Mpfeile
Mlinien "Zusatztext"]
Punkt1 - Maßpunkt1
Punkt2
- Maßpunkt2
Textpunkt - linker unterer Startpunkt
Maßtext
alle folgenden Paramter sind optional:
Winkel -
ANG(0) = Horizontal, ANG(90) = Vertikal; keine Angabe:
Parallelmaß.
Mpfeile: 2 Ziffern fuer die beiden Maszpfeile:
0=keiner, 1=<, 2=>, 3=/, 4=o; Default ist 12.
Mlinien: 2
Ziffern fuer die beiden Maßhilfslinien: 0=keine, 1=Volllinie;
Default ist 11.
Zusatztext (zB. "[+
0.2").
Beispiel:
P1=P(100 100)
P2=P(200
200)
N1=DIM P1 P2 150 50 ANG(0) "[+ 0.2"
N2=DIM
P1 P2 250 150 ANG(90)
N3=DIM P1 P2 100 180
Winkelmaß
2D:
N# = DIMA Punkt1 Richtg1 Punkt2 Richtg2 Textpunkt
[Mpfeile Mlinien "Zusatztext"]
N20=DIMA P20 ANG(L20) P21
ANG(L21) P22 12 11 "[+ 0.5"
Die Maßlinie (ein
Kreisbogen) wird im Gegenuhrzeigersinn (CCW) angelegt. Richtung1/2
definiert, wo sich der Endpunkt des Kreisbogen befindet (ausgehend
von Punkt1/2).
Beispiel:
L20=P(330 100 0) P(380 130
0)
P20=P(400 100 0)
N20=DIMA P20 ANG(0) P(L20 MOD(2)) ANG(L20)
P(444 128 0)
Durchmesser/Radiusmaß 2D:
N#
= DIM Kreis Textpunkt [Mpfeile "Zusatztext"]
Beispiel:
#
außen:
C20=P(-200 100) 12
P27=P(-175 125)
N30=DIMR C20
P27 "[+0.5"
P28=P(-175 70)
N31=DIMD C20 P28 "[+0.5"
#
innen:
C21=P(-200 200) 32
P29=P(-210 190)
N32=DIMR C21 P29
"[+0.5"
VERMASZUNG WIRD NOCH
NICHT NACH IGS, DXF EXPORTIERT.
Für interaktive Modifikation
der Parameter Mpfeile, Mlinien und Zusatztext sollte ein
Userinterface erstellt werden.
N# = IMG
Bildposition [Startpunkt_Linie Linientyp] BMP-Filename
[Scale]
Bildposition: als Punkt links unten
BMP-Filename:
der Dateiname einer JPG-oder BMP-Bitmap;
aktivieren des Filedialog mit der mittleren Maustaste.
Das
Verzeichnis ist als Symbol zu definieren (Siehe Symbolische
Dateibezeichnungen).
Scale: wird kein Scale (oder Wert
0) definiert, so wird die Bitmap dynamisch skaliert.
Wird ein
Maßstab angegeben, so wird dieser Maßstab fixiert (kein
dynamisches skalieren).
Beispiel:
N20=IMG P(0
0 0) "Data/Bild1.bmp"
# Windows-Bitmap
<base>/dat/Bild1.bmp wird dargestellt.
Kein Export von Bitmaps.
Punkte
P1=P(10,20)
2D-Punkt absolut
P21=P(10,20,30)
3D-Punkt absolut
P2=P1,D1
Punkt P1 um den Vektors D1 verschieben.
P2=P1,D1,Abstand
Punkt P1 in Richtung des Vektors D1 um den Abstand abst verschieben.
P11=R1
P10
Transformation des Punktes P10 in das Referenzsysten R1 (Ebene
R1).
P11=R1 10 0 - Punkt P11 wird auf der X-Achse des
Referenzsystems R1 liegen.
P11=P10
R1
Projektion des Punktes P10 auf die Ebene R1.
P3=P2,X(10),Y(10)
Punkt relativ (im Abstand 10,10 von p2)
P5=P4,ANG(90),Abstand
Polar relativ (Basispunkt, Winkel, Abstand)
P3=P1,P2
Punkt in der Mitte erzeugen.
P3=P1,D(P1,P2),Abstand
Eine
Strecke abtragen.
Punkt mit bestimmtem Abstand von P1 in Richtung
P1 -> P2 abschlagen.
Die Richtung wird bestimmt durch den
Winkel der Strecke P1 -> P2.
P11=P1,D(L1),Abstand
Eine Strecke von einem Punkt weg entlang einer Linie mit bestimmtem
Abstand abtragen.
P2=P1,D(L1),Abstand,Normalabstand
Eine
Strecke von einem Punkt weg abtragen. Der Abstand wird in die
Richtung der Linie abgetragen, der Normalabstand wird normal zur
Linie abgetragen. Beispiel:
p1=p1,d(l1),val(100),val(50)
P1
wird 100 mm in Richtung l1 verschoben, dann wird er 50 mm in Richtung
normal zu l1 verschoben
P3=P1,P2,Winkel
Punkt
drehen (Mittelpunkt,Ausgangsposition,Winkel)
Beispiel:
P3=P1,P2,ANG(180)
P2 wird 180 Grad um P1 gedreht.
P1=L1,Seite
Anfangs- oder Endpunkt einer Linie (entsprechend Seite)
P2=P1,L1
Punkt auf Linie projizieren.
P4=L1 L2
Schnittpunkt Linie - Linie
P41=L20 A20
Schnittpunkt Linie - B-SplineFläche
P6=C1
Kreismittelpunkt
P7=P1 C1 [Seite]
Punkt normal auf Kreis (wird auf den Kreis projiziert). Die Standardlösung ist der
nähere Punkt.
MOD(2) definiert den entfernten Punkt.
P5=L1
C1 Seite
Schnittpunkt Linie- Kreis.
P6=C1
C2 Seite
Schnittpunkt 2-er Kreise
Anfangs-
/ Endpunkt einer Line; 1 = Startpunkt; 2 = Endpunkt.
P20=L20
MOD(1)
Anfangs-
/ Endpunkt eines Kreises: 1=Startpunkt, 2=Endpunkt.
P28=C22 MOD(2)
Punkt
eines Polygons:
S20=POL ..
P10=S20 MOD(<PunktNummer>)
Anfangs- / Endpunkt einer Kurve, entsprechend Seite. Punkt = Kurve [punktNummer] P10=S10 MOD(1) Punkt auf Kurve projizieren. Punkt = Punkt Kurve [punktNummer] P11=P1 S10 MOD(1) P1-P11 bilden nun eine Normale auf S10 im Punkt P11. MOD(1) = Seite - erste Lösung. (Nichtimplementiert: Kommt P11 ausserhalb von S10 zu liegen, so wird die Kurve mit einer Tangente durch den Endpunkt verlängert.) Punkt auf Fläche projizieren. Punkt = Punkt Fläche [punktNummer] P12=P1 A20 MOD(1) Einen Punkt auf einem Objekt durch Parameter erzeugen Objekt: Linie/Kreis/Kurve/Fläche Parameterbereich ist 0 bis 1; 0.5 definiert also die Mitte. Bei Flächen sind zwei Parameterwerte erforderlich (U und V; Laengs- und Querrichtung). Beispiel: # Mittelpunkt einer Linie: P23=C20 VAL(.5) # Mittelpunkt einer B-SplineFläche: P23=A20 0.5 0.5
Der Punkt mit
Index 0 ist zu jeder Zeit die aktuelle Position, kann also
nur für
einen Arbeitsschritt verwendet werden.
Implizite
Punktdefinitionen:
Beispiel für Endpunkte der Linie
mit P(L20 MOD(1)):
L20=P(-300 10) P(-260 40)
N21=DIM P(L20
MOD(1)) P(L20 MOD(2)) P(-280 -40) ANG(0)
Eckpunkt eines Polygon
aus einer CCV:
P# = P(S<ccv> MOD(<ccvSegNr>)
MOD(<polgonPtNr>))
Punkt parametrisch auf
BasisObjekt:
P# = P(<baseObj> <lpar>)
Beispiel -
Punkt in der Mitte des Objekt Line-20:
P20=P(L20 0.5)
P =
P(S<ccv> MOD(<ccvSegNr>) <lpar>)
Linien
Line
durch Punkt und die Z-Achse von Kreis/Ebene: Linie
parallel zu Linie mit Abstand. Implizite
Liniendefinitionen: Polygonsegment aus einer
CCV: Vektor
- Richtung Als
letzter Parameter kann bei allen Vektordefinition "REV"
angegeben werden (Vektor wird verkehrt = Revers dargestellt). Als
vorletzter Parameter kann bei allen Vektordefinition die Vektorlänge
angegeben werden. entsprechen den
Standardachsrichtungen DIX
DIY DIZ Definition
2D-Vektor durch 2D-Winkel und Vektorlänge (optional). Definition
Vektor durch Drehwinkel, Kippwinkel und Vektorlänge
(optional). D5=P1
P2 Vektor
D5 als Strecke von P1 nach P2. Länge optional. Vektor
in Richtung der Linie; Länge optional. Haupt/Nebenachsen
von Circ, Ellipse, Plane durch Modifier: Normalvektoren: (Alle
zusätzlich mit Länge und "REV" möglich). Beispiele: Werden angewendet mit
Modifikation Transform Translation: T=TRA Translationsvektor
[Vektorlänge] Rotation: CW
(clockwise, im Uhrzeigersinn) oder Der
Drehsinn ist gültig, wenn die Drehachse zum Auge des Betrachters
zeigt. Kreise
(360 - Grad): #
Mittelpunkt, Radius [Z-Achsvektor] #
Kreis kopieren #
konzentr. Kreise. Negative Radiusdifferenz verkleinert den
Kreis. #
Mittelpunkt, Punkt am Umfang [Z-Achsvektor] #
Mittelpunkt, tangential an Line / Circ
# Tangential an 2 Elemente, Radius. #
Punkt am Umfang, Tangente, Radius. #
Punkt am Umfang, tangential an Kreis. #
Kreis durch drei Punkte am Umfang Kreisbögen
(begrenzte Kreise): #
Mittelpunkt Startpunkt Drehwinkel Z-Achs-Vektor Circ=ARC Startpunkt Endpunkt
Mittelpunkt [Z-Achse] [Drehrichtung] Implizite
Definition von Kreisen / Kreisbögen: C(Startpunkt
Endpunkt Mittelpunkt [Z-Achse] [Drehrichtung]) Punkte hier nur mit
Index "P20" oder direkt "xKoord yKoord
[Z(zKoord]" Sehnentoleranz: Die Sehnentoleranz für die Darstellung der Kreise kann direkt
gesetzt werden in Standards/Tolerances mit "Toleranzen
zur Darstellung - Polygon". Weiters wird auch durch Verändern der Modelsize (MODSIZ) die
Sehnentoleranz gesetzt. Kurven Parallelogram aus einem
Punkt und 2 Vektoren: Beispiel: 2D-Polygon aus
Punkten: Polynomische Kurve
aus Polynomwerten: Kontur
("Concatenated Curve" - CCV) Die
Kontur beginnt und endet an einem Punkt. Achsensysteme
- Ebenen R
= Nullpunkt Ebene
aus Nullpunkt, Normalvektor der Ebene und einem Punkt auf der X-Achse
der neuen Ebene: Ebene
aus Nullpunkt, Normalvektor und X-Achsvektor: Ebene/Referenzsystem
durch drei 3D-Punkte; Ebene/Referenzsystem
verschieben (die Achsenrichtungen bleiben): R
= Z(Z_Abstand) Die
neue Ebene ist parallel zur X-Y-Ebene, alle Achsenrichtungen sind
hier gleich wie bei der Hauptachse. Der Abstand auf der Z-Achse wird
angegeben. Ebene
parallel zur Y-Z-Ebene; die neue X-Achse entspricht der 3D-Y-Achse,
die neue Y-Achse entspricht der 3D-Z-Achse. Die neue Z-Achse
entspricht der Hauptachse -X. Ebene
parallel zur X-Z-Ebene; die neue X-Achse entspricht der 3D-X-Achse,
die neue Y-Achse entspricht der 3D-Z-Achse. Die neue Z-Achse
entspricht der Hauptachse -Y. Aktivieren
von Refsys Nr. 12. Entspricht
der Hauptachse = Rücksetzen. Planare
Flächen; getrimmt, ungelocht und gelocht: ein
Kreis, eine Ellipse, ein geschlossener B-Spline oder eine
geschlossene CCV (S=CCV ..). P20=P(-120
-160) #
Beispiel: Aussenrand C29, Insel C28. C29=P(-252.2
-580.9 0) VAL(12) Drehflächen: B-Spline-Fläche: Fläche
supported, trimmed, punched: Es
ist immer eine Stützfläche erforderlich. Fläche
auf Torus (Kreisring): einen Solidkörper "Torus"
wählen (B=TOR ..). Randkurve,
Inseln:
ein
Kreis, eine Ellipse, ein geschlossener B-Spline oder eine
geschlossene CCV (S=CCV ..). # Beispiel
Konusfläche: Kreisähnliche
Fläche aus 3 - n Punkten.
Streifenförmige
Fläche aus 1-n Streifen. Schraffur /
Hatch: Kugel: # Kugel aus Mittelpunkt
Radius: # Kugel aus
Kreis: Konischer Körper
(Kegel): B2=CON Mittelpunkt_1
Mittelpunkt_2 Radius_1 Radius_2 Torus / Kreisring:
B#=TOR L
C
// Achse Aussenkreis Die Achse des
Hautkreises ist die Hauptachse. Prisma: B=PRISM
planare_Basisflaeche Vektor/Point/Dicke planare_Basisflaeche:
geschlossenes Polygon / Kreis /Ellipse # Prisma aus
Parallelogram und Vektor # Prisma aus Kreis mit
Dicke (Zylinderhöhe) # Prisma konisch aus
Polygon Siehe Interne Modelle /
Externe Modelle M# = "<modelname>"
Position [Scale] [Z-Vektor [X-Vektor] ] Modelname: siehe
Symbolische
Dateibezeichnungen. Beispiel internes
Submodell: Bei allen Varianten kann
zusätzlich angegeben werden: # Richtungsvektor # Linie (Richtung) # 2 Punkte
(Richtung) Im Modus CAD kann durch
die PgUp / PgDown - Taste eine zusätzlicher (relativer)
Winkelwert von jeweils +90 Grad aufaddiert werden. (Es muss zuvor
eine Angabe gemacht worden sein (zB eine Linie selektieren)). Beispiel: Jedes CAD-Objekt kann
mit einer Interaktion verbunden werden. DRAW OFF Darstellung aller folgenden Objekte aus / einblenden (ON). MODE DISP_PT OFF
Darstellung Punkte abschalten; MODE DISP_PT ON
Zurücksetzen mit ON. Standard ist ON. MODE DISP_PT ptSize
Definition Punktgrösse. Layer Layer LAY 12
ab jetzt alles dem Layer 12 zuordnen LAY 0
ab nun wieder alles dem Standardlayer 0 zuordnen LAY 12 OFF
Layer 12 ausblenden (ALL: alle Layer). LAY ALL ON
Alle Layer einblenden. LAY 12 HILI ON
alle Objekte in Layer 12 hiliten LAY 12 DIM OFF
alle gedimmten Objekte in Layer 12 normal darstellen LAY 12 NOP ON
alle Objekte in Layer 12 nicht selektierbar machen LAY 12 ADD Eigenschaften Eigenschaften (ein oder mehrere der folgenden): LAY 8 Input nur von Layer 8 TYP PT nur Punkte (LN=Lines, CI=Kreise, AC=Kreisbögen) COL 2 nur Farbe 2 (rot) LTYP 2 nur Strichtyp 2 (strichliert kurz) THICK 2 nur Liniendicke 2
Farben, Linientypen,
Strichstärken Strichtyp: 0 =
Vollinie Strichdicke: G20=2,0,4
Rote Vollinie mit Dicke 4. G20
Aktivieren des Attributtabelleneintrages 20; alle nachfolgend erzeugten Elemente erhalten diese Attribute. Aktivieren
der Farbe "Selektiert". Aktivieren der Farbe
"DIM" (abdunkeln). Aktivieren
"NOPICK"; die folgenden Elemente sind nicht
selektierbar. DEFCOL <rot>
<blau> <grün> Die Modelbezeichnung
darf keinen Pfad (und kein Pfadtrennzeichen "/" oder "\")
enthalten. Auswahl eines Submodels
aus Liste (durch mittlere Maustaste) oder durch Selektion eines
bereits vorhandenen Submodels. Benutzen von internen
Submodels im MAN-Modus: M20="subModel1"
P(0 0 0) DZ DIY Für diese Models
muss es eine (externe) Modelldatei geben. Benutzen von externen Submodels im CAD-Modus: Auswahl eines Submodels eines Submodels aus Liste (durch mittlere
Maustaste, im Grafikfenster) oder durch Selektion eines bereits
vorhandenen Submodels. Eine symbolische
Dateibezeichnung besteht aus Alle symbolischen Pfade
sind in Datei <base>xa/dir.lst definiert. Standardverzeichnis ist
<base>/dat; das Zugriffsysmbol für dieses Verzeichnis ist
"Data". Unterprogrammtechnik Innerhalb
der Geometrieunterprogramme wird eine Kontur mit CON0 - CONEND
definiert. Beispiel MAC: NICHT AKTIV: WORK
Beabeitungtyp UnterprogrammName [Parameter] Pocketzyklen siehe auch
POCKET-Befehl. KonturName: muss
dzt ein Polygon oder eine CCV sein. Siehe Beispiele. Parameter: S2=BSP P(2,1) P(1,1)
P(0,0) P(-1,1) P(-2,1) Funktionen, die an den
Postprozessor weitergegeben werden: mch <machine> pn <Partname> stop osp
operational stop osp on / off TL RI
Tool right, G42 TL LE
Tool left, G41 TL OFF
Werzeugkorrektur aus, G40 zsur1 <Z-Wert>
Definiert den Abstand der unteren Werkstückebene von der Z=0 - Ebene. zsur2 <Z-Wert>
obere Werkstückebene zsur2
Die obere Werkstückebene wird zur aktiven Ebene definiert cool on / off fed <Vorschubwert> "M01"
Insert "(Stop ",x(p0),y(p0),")" TEC <Tooldef> Tooldef oder allg. Technologiedefinition tcpos < Punkt> Def. Werkzeugwechselpunkt drill clear <Z-Wert>
Clearence deep <Z-Wert> cycle off
nur off TL 0
Werkzeug entladen TL 1
Werkzeug Nr. 1 laden INL "Text"
Insert Line; es wird eine eigene Zeile ausgegeben. Auch bei allen Insert - Versionen kann Text zusammengesetzt
werden. INS "G40 "
Insert to start of line; am Zeilenanfang (der nächstfolgenden Zeile) einfügen. INE " F12.5"
Insert to end of line; am Zeileende (der nächstfolgenden Zeile) einfügen. Versionsinfos
L1=P1 P(100 100)
Linie zwischen 2 Punkten
L2=Y(10)
L2=DX P20 Y(10) Z(10)
Linie parallel zur aktuellen X-Achse; durch einen Punkt.
Es kann ein Y-Offset und/oder Z-Offset definiert werden.
L1=X(10)
L2=DY P20
Linie parallel zur aktuellen Y-Achse; durch einen Punkt.
Es kann ein X-Offset und/oder Z-Offset definiert werden.
L2=DZ P20
Linie parallel zur aktuellen Z-Achse; durch einen Punkt.
Es kann ein X-Offset und/oder Y-Offset definiert werden.
Linie durch Punkt mit fixem Winkel
L3=P1 ANG(45)
Linie durch Punkt mit Richtung (Vektor)
L4=P1
D(L1)
# parallel zu Linie L1 oder
L = P L
L = P C
L = P R
L4=P1
D(L1) ANG(90)
Linie durch Punkt mit Winkel relativ zu anderer
Linie.
ANG(0): parallel zu Linie L1; ANG(90): normal.
L8=L1 Abstand Seite
L8=L1
VAL(10) HIY
Linie
als Mittellinie (wenn l1, l2 parallel) oder als Winkelhalbierende
(durch den Schnittpunkt).
L9=L1 L2
Linie
als Winkelhalbierende, zusätzlich drehen.
L9=L1 L2 ANG(90)
Line
tangential an Kreis, parallel zu Linie.
L1=C1 D(L1) Seite
Linie
tangential an Kreis mit fixem Winkel
L1=C1,D(ANG(45)),Seite
Linie
durch Punkt tangential an Kreis
L5=P1 C1,Seite
Linie
tangential an 2 Kreise (Ort: in
out)
L5=c1,c2,Ort,Seite
Schnittlinie
zwischen zwei Ebenen.
L10=R20 R21
Projektion
einer Linie auf eine Ebene.
L21=L20 R20
Linie
tangential durch Punkt P10 an Kurve S10.
L10=P10 S10 MOD(1)
L20=L(Startpunkt
Endpunkt)
Line in einer CCV:
L(S<ccv>
MOD(<ccvSegNr>))
L(S<ccv> MOD(<ccvSegNr>) MOD(PolgonSegNr))
Vektoren benutzen den Kennbuchstaben D
("Direction").
Vektoren werden nur temporär
dargestellt; Normierte Vektoren (mit Länge 1) in schwarz, sonst
rot. Immer in Bildmitte.
Es gibt folgende Standardvektoren:
DX
DY DZ
entsprechen den inversen Standardachsrichtungen
Beispiel:
D1=DIX
Definition Vektor durch Richtung und
Länge. D=D(dx,dy[,dz]) [Länge] ["REV"]
Beispiele:
D1=DX 100
D2=D(10 0)
D3=D(0.7 0 0.7)
100
D3=ANG(30) 100
Der
Winkel definiert die Richtung in der X-Y-Ebene.
D4=ANG(90)
ANG(30) 100
Der Drehwinkel definiert den Verdrehwinkel in der
X-Y-Ebene; 0 (Grad) entspricht also der X-Richtung, 90 enspricht der
Y-Richtung; 180 ist die inverse X-Richtung.
Der Kippwinkel ist
jener Winkel, den der Vektor mit der X-Y-Ebene einschliesst.
Alle
Vektoren mit gleichem Kippwinkel (bei variablem Drehwinkel) bilden
also einen Kegel um die Z-Achse.
Die Z-Achse hat einen Kippwinkel
von 90 Grad (unabhängig vom Drehwinkel).
Im Beispiel (90,30)
wird die X-Achse um 90 gedreht (um die Z-Achse); der
Vektor
entspricht nun der alten Y-Achse. der Vektor wird nun in jener
Ebene,
den er nun mit der Z-Achse einschliesst, um 30 Grad
hochgekippt.
Vektoren mit positivem Kippwinkel liegen im positiven
Z-Halbraum,
Vektoren mit negativem Kippwinkel im negativen
Z-Halbraum.
D5=P1 P2 100
D6=L10
100
1 = Z-Achse,
2 = X-Achse (Ellipse: Hauptachse),
3 = Y-Achse (Ellipse:
Nebenachse),
4 = inverse X-Achse
5 = inverse
Y-Achse
Beispiel: "D20 = C20 MOD(2)"
liefert die X-Achse des C20
D=Circle
D=Plane
D=Point
Point Point
D=Line Line
D=Line Point
D=Vector Line
D=Vector
Point Point
D7=C10
100
# Vektor in Richtung der Z-Achse von Kreis C10, Läge 100
D7=R10
REV
# Vektor in die umgekehrte Richtung der Z-Achse von Ebene R10.
T20=DZ VAL(100)
# Translation in Richtung Z
um 100 mm
T=ROT
DrehAchse DrehWinkel
T20=ROT L20 ANG(30)
# Definition einer
30-Grad-Rotation um Linie L20
CCW (counterclockwise,
Gegenuhrzeigersinn)
Die Angabe von CCW ist nicht erforderlich
(Standard).
C20=P20 VAL(25) DZ
C2=C1
C2=C1 <Radiusdifferenz>
C3=P1 P2
C3=P1 P2
D(1 0 1)
C1=P1 L1
C1=P1 C1
Kreisbogen durch Startpunkt, Startrichtung und Radius.
Startrichtung: die Tangente an den Kreis im Starpunkt. Ein Vektor.
Angle: Öffnungswinkel, optional; Standard ist 360 Grad.
Achsvektor optional.
[CW/CCW] ist die Drehrichtung; optional ("CW").
# Beispiel: Endtangente einer Klothoide als Startrichtung.
S20=CLOT P(0 0 0) DX ANG(30) 0 10
P20=P(S20 1)
D20=TNG P20 S20
C20=ARC P20 D20 25 ANG(30)
# C1=P1,L1,Radius,Seite
# C2=P1,C1,Radius,Seite
# C5=L1,L2,Radius,Seite
# C5=L1,C1,Radius,Seite
# C5=C1,C2,Radius,Seite
L1=X(10)
L2= Y(10)
C1=L1 L2 VAL(5) MOD(1)
#
2 Punkte am Umfang, Radius. Seite: auf der sich der Mittelpunkt
befindet.
# C1=P1 P2 Radius Seite Z-Achs-Vektor
P20=P(98.6 5.4
0)
P21=P(114.5 -15.2 0)
C22=P20 P21 VAL(12) MOD(1) DZ
# C1=P1 L1 Radius
Seite
L20=P(44.6 -32.8 0) P(86.5 -69.3 0)
P26=P(56.2 -35.5
0)
C21=P26 L20 VAL(8) MOD(2)
# C2=P1 C1 Radius
Seite
C20=P(114.5 -15.2 0) VAL(12) DZ
P27=P(96.9 -19.7
0)
C21=P27 C20 VAL(8) MOD(1)
C20=P(0 0) P(10 0) P(10 10)
C21=ARC P20 P21
ANG(90) DZ
Kreisbogen aus Startpunkt
Endpunkt Mittelpunkt (Mittelpunktsachse, Drehrichtung)
Drehrichtung:
CW (Uhrzeigersinn) oder CCW (Gegenuhrzeigersinn, Standard).
Der
Drehsinn ist gültig, wenn die Drehachse zum Auge des Betrachters
zeigt.
C20=ARC P1 P2 P3
C31=ARC P(10,0,10) P(0,10,10)
P(0,0,10)
C32=ARC P(10,0,0) P(0,0,10) P(0,0,0) D(0,1,0) CW
Circ = ARC Startpunkt, Endpunkt, Radius, Z-Achse
Kreisbogen
aus Startpunkt Endpunkt Radius Mittelpunktsachse, Info180.
Radius:
positiv fuer Uhrzeigersinn, negativ fuer Gegenuhrzeigersinn.
C21=ARC
P(251 23 0) P(189 75 0) VAL(50) DZ
# Kreisbogen durch drei Punkte am
Umfang
C20=ARC1 P(0 0) P(10 0) P(10 10)
C(Endpunkt
Mittelpunkt [Z-Achse] [Drehrichtung])
Beispiel: C(25 0 0 25 0 0)
Fehlt der
Startpunkt, so wird der Endpunkt der letzten P(), L() oder C() -
Definition benutzt.
Circ aus
CCV:
C(S<ccv> MOD(<ccvSegNr>))
Ellipse
aus Mittelpunkt, Endpunkt Hauptachse, Endpunkt Nebenachse:
S1=ELL
P(100 0) P(150 0) P(100 20)
Ellipse aus
Mittelpunkt, Vektor Hauptachse, Vektor Nebenachse:
S1=ELL P(100 0)
D(10 0) D(0 5)
(die Vektoren definieren Richtung und Länge
der Haupt- und Nebenachse)
Begrenzte Ellipse
aus Mittelpunkt, Vektor Hauptachse, Vektor Nebenachse, Startpunkt,
Endpunkt:
S1=ELL P(0 0) D(10 0) D(0 5) P(10 0) P(-10 0)
Ellipse aus
Projektion von Kreis auf Ebene:
S20 = ELL C20 R20
S= RECT pt1 vec1 vec2
(Vektoren: Richtung
und Länge !)
S20=REC
P(100 0 0) D(50 0 0) D(0 12 0)
S#=POL2,2D-point1,2D-point2<,2D-point3, ..
2D-pointn>
Beispiel:
P20= 10,10
S20=POL2, P20,
P(10,0) P(20,10) P(30,30)
3D-Polygon aus
Punkten:
S#=POL,point1,point2<,point3, ..
pointn>
Beispiel:
P20=P(10,10)
P21=P(20,20,15)
P22=P(25,20)
S24=POL
P20 P21 P22 P(30,12,0) P(30,10,10) P(40,30,10)
Polygon
auf Ebene projizieren:
S#=POL Polygon Refsys
Beispiel:
S20=POL
P(30,0) P(30,10,10) P(40,30,20)
S21=POL S20 R0
3D-Polygon
aus B-Spline:
S#=POL,B-Spline,Toleranz
S Clotoid CLOT
Klothoid-Kurve erzeugen (eine planare Spirale durch Fresnel-Integrale).
StartPoint Startpunkt
StartVector StartRichtung (Vektor oder Winkel)
Angle Differenzwinkel Startrichtung - Richtung am Endpunkt
positiv: Uhrzeigersinn (CW); negativ: Gegenuhrzeigersinn (CCW).
StartRadius Radius beim Startpunkt oder 0 für unendlich
EndRadius Radius beim Endpunkt oder 0 für unendlich
[Z-Axis] Normalvektor; optional.
Hilfsfunktionen zum Erzeugen einer Klothoid-Kurve:
Erzeugen des Startpunktes mit "PT cartes"
Selektieren Sie den Endpunkt des vorhergehenden Elementes.
Erzeugen des StartVector mit "VEC tangent"
Selektieren Sie den Endpunkt des vorhergehenden Elementes und das
vorhergehende Element; mit "OK" wird der Auslaufvektor erzeugt.
Beispiel:
S20=CLOT P(0 0 0) ANG(0) ANG(30) 0 10
Beispielmodel siehe sample_cloth1.gcad
Export einer Klothoid-Kurve:
DXF: Ausgabe als POLYLINE.
Iges: Ausgabe als Entity 106 (CopiousData, Form 12 = 3D-Polygon).
S#=PSP3,arc1<,arc2, .. arcn>
Polynomische Kurve mit 1-n Arcs.
Ein Arc besteht aus 13
Zahlen; dem Abstandswert und den Polynomwerten
xa, ya, za,
xb, yb, zb, xc, yc, zc und xd, yd, zd.
xa, ya, za
definieren einen
Durchgangspunkt.
Beispiel:
S20=PSP3,0,3.84815,0.967105,0,0.577021,0.207039,0,0,0,0,-0.169071,0.140166,0,
1,4.2561,1.31431,0,0.069808,0.627537,0,-0.507212,0.420498,0,0.341924,
-0.327596,0,2,4.16062,2.03475,0,0.081155,0.485747,0,0.518559,-0.562288,0,
-0.183075,0.224101,0,3,4.57726,2.18231,0,0.56905,0.033474,0,-0.030664,
0.110016,0,-0.060996,-0.13481,0,4,5.05465,2.19099,0,0.324734,-0.150924,0,
-0.213651,-0.294414,0,0.071217,0.098138,0,5,5.23695,1.84379,0,0.111083,
-0.445338,0,0,0,0,0.427303,0.588828,0
B-Spline aus Kontrollpunkten / Knotenvektor:
S-bsp = BSP,ptNr,degree,controlpoints,knotvector,Startparameter,Endparameter
ptNr = Anzahl von Kontrollpunkten
controlpoints: die Kontrollpunkte; Anzahl = ptNr, 3 Werte (X/Y/Z).
knotvector: die Abstandsparameter; Anzahl = ptNr + degree + 1.
Beispiel:
S20=BSP,6,3,-178,109,0,-166,128,0,-144,109,0,-109,112,0,-106,134,0,-119,138,
0,0,0,0,0,0.333333,0.666667,1,1,1,1,0,1
B-Spline aus Punkten:
S-bsp = BSP {points} [,degree] [,CTRL]
CTRL: ob die definierten Punkte Durchgangspunkte oder Kontrollpunkte sind.
Beispiel:
P20=P(78,9)
P21=P(66,28)
P22=P(44,9,25)
P23=P(9,12)
P24=P(6,34)
# B-Spline from Points
S20=BSP,P20,P21,P22,P23,P24
B-Spline aus Polygon:
S-bsp = BSP {Polygon} [,degree] [,CTRL]
CTRL: ob die definierten Punkte Durchgangspunkte oder Kontrollpunkte sind.
Beispiel:
P20=P(78,9)
P21=P(66,28)
P22=P(44,9,25)
P23=P(9,12)
P24=P(6,34)
# B-Spline from Points
S20=BSP,P20,P21,P22,P23,P24
# Polygon from Points:
DRAW OFF
S21=POL,P20,P21,P22,P23,P24
# BSpline from Polygon
DRAW ON
S22=BSP,S21
B-Spline = Isoparametrische Kurve aus einer Flaeche
Dzt nur aus B-SplineFläche, Punkteingabe statt Parameterwert noch nicht implementiert
S-bsp = ISO {B-SplineFläche} {Parameterwert} [,CX]
Eingaben:
Fläche: Dzt nur B-SplineFläche
Parameterwert: (0 - 1)
Optional: Richtung.
Keine Angabe: LängsRichtung; "CX" definiert QuerRichtung.
(Modifier CX = across; Default = along)
Beispiel:
# Querschnittkurve in der Mitte der Surface A20:
S20=ISO A20 .5 CX
S#=CCV <Konturelemente>
Elemente: Punkte, Linien,
Kreise, Kurven.
Im Anschluss an Kreise und Kurven kann die
Drehrichtung (CW oder CCW) definiert werden. Es werden automatisch
Normalen an Linien und Kreisbögen
gebildet.
Beispiel:
C20=P(39,26) VAL(22)
S20=CCV P(7,25) C20
CW P(35,58)
2D-CompositeCurve
aus 2D-Polygon:
Eine 2D-CompositeCurve besteht aus
Kreisen/Linien
S#=CCV2, 2D-Polygon,
Toleranz
Beispiel:
P20=P(78,9)
P21=P(66,28)
P22=P(44,9,25)
P23=P(9,12)
P24=P(6,34)
#
Poly <- Points
DRAW OFF
S20=POL,
&
P20,P21,P22,P23,P24
# BSpline <- Poly
DRAW
ON
S21=BSP,S20,2
# Poly <- BSpline
DRAW
OFF
S22=POL,S21,0.05
# 2DPoly <- Poly
DRAW
OFF
S23=POL2,S22,R22,0.05
# 2DCirc/Line <- 2DPoly
DRAW
ON
S24=CCV2,S23,0.05
Vordefinierte Ebenen sind:
RZ
Basisebene XY
RY
Ebene XZ
RX Ebene
YZ
Es wird eine Ebene mit dem angegebenen Nullpunkt und
den Achsen des Hauptachsystems erzeugt.
Definition
einer Ebene durch den Nullpunkt und einen Normalvektor:
R =
Nullpunkt Normalvektor/Linie
Normalvektor: Vektor oder
Linie.
Beispiele:
R10=P(100 100 100) D(0 0 1)
R11=P154
D(ANG(90) ANG(45))
R12=P(100 100 100) L(P(0 0 0) P(0 0 100))
R=po vz px
Beispiel: R11=P(100 100 100) D(0 0
1) P(101 100 100)
R=PERP Origin
Z-Achse X-Achse
Beispiel:
R21=PERP P(50 50) DX DY
Definition
einer Ebene durch den Nullpunkt, den X-Vektor der Ebene und einen
weiteren Vektor in der neuen Ebene:
R=po vx vc
Beispiel:
R12=P(100 100 100) D(1 0 0) D(0 1 0)
R20=P(100
100 25) DX DY
R=po, px, pt
po = der Nullpunkt,
px =
ein Punkt auf der X-Achse der neuen Ebene,
pt = ein Punkt in der
Ebene (der nicht in einer Linie mit po - px liegen darf).
Beispiel:
R4=P(100 100 100) P(101,100,100) P(100,101,100)
R = Refsys
Nullpunkt
Beispiel:
R21=R20 P(100 100 50)
Beispiel: R5=Z(100)
R
= X(X_Abstand)
R
= Y(Y_Abstand)
R12
RZ
A
= Randkurve
[Inseln ...]
Randkurve,
Inseln:
#
Beispiel Planare Fläche:
# Die Randkurve:
S20=CCV P20 P(233 -186) P(223 -95) P(104
-81) P(135 134) P(-122 162) P20
# die planare Fläche:
A20=S20
C28=P(-255.9 -606.8 0) VAL(66)
A20= C28 C29
Ruled Surface
aus zwei Grundelementen (PT/LN/AC/CV)
A#=SRU
Objekt1 Objekt2
Beispiel:
L20=P(0
-10 20) P(0 10 20)
C20=ARC
P(0 -10) P(0 10) P(0 0)
A20=SRU
C20 L20
Ruled
Surface aus Grundelement und Vektor:
Beispiel:
L30=P(0
-10 20) P(0 10 20)
D30=D(10
10 60)
A30=SRU
L30 D30
Zylinderfläche
A
= CYL Achse Radius drehWinkel1 drehWinkel2 Hoehe1
Hoehe2
Zylinderflaeche;
Achse
Linie od Kreis od Ebene od PT+PT od PT+LN od PT+VC
Radius
KeyIn Radius oder Punkt.
drehWinkel1
KeyIn Startwinkel (Def = 0) oder Punkt.
drehWinkel2 KeyIn
Endwinkel (Def = 360) oder Punkt.
Hoehe1
KeyIn Hoehe (ab position; Def = 0) oder Punkt.
Hoehe2
KeyIn Hoehe (ab position) oder Punkt.
R22=P(105 129.2 0)
D(1 1 1)
A22=CYL R22 12 0 360 0 30
Kugelfläche
A
= SPH Achse
Radius [drehWinkel1
drehWinkel2 [HoeheWinkel1 HoeheWinkel2]]
Kugelflaeche; Parameter
wie Zylinderflaeche.
Achse
Linie od Kreis od Ebene od PT+PT od PT+LN od PT+VC
Radius
KeyIn Radius oder Punkt.
drehWinkel1 KeyIn Startwinkel (Def
= 0) oder Punkt.
drehWinkel2 KeyIn Endwinkel (Def = 360)
oder Punkt.
HoeheWinkel1 KeyIn Startwinkel (Def = 0) oder
Punkt.
HoeheWinkel2 KeyIn Endwinkel (Def = 180) oder
Punkt.
P20=P(68 68.9 0)
A21=SPH R(P20) 12
Revolved
- Surface (Rotationsfläche, Drehfläche)
A=
SRV Achse [Kontur drehWinkel1 drehWinkel2 [Hoehe1
Hoehe2]]
Achse Linie od Kreis
od Ebene od PT+PT od PT+LN od PT+VC
Kontur
Linie, Kreis od. B-Spline.
drehWinkel1 KeyIn Startwinkel
(Def = 0) oder
Punkt.
drehWinkel2 KeyIn Endwinkel (Def = 360)
oder
Punkt.
Hoehe1 KeyIn
Startparameter (Def = 0.) oder Punkt.
Hoehe2
KeyIn Endparameter (Def = 1.) oder Punkt.
Der Startpunkt des
Konturelementes liegt in Winkelposition 0 Grad; die Drehrichtung ist
CCW.
Beispiel:
L20=P(20
0) P(20 20)
L21=P(50
0) P(40 20)
A20=SRV
L20 L21 270 0
A#=BSP,pt1Nr,pt2Nr,degree1,degree2,controlpoints,knotvector1,knotvector2
pt1Nr = Anzahl von
Kontrollpunkten in Richtung 1
pt2Nr
= Anzahl von Kontrollpunkten in Richtung 2
degree1
= Grad der B-Splinekurven in Richtung 1
controlpoints: die
Kontrollpunkte; Anzahl = pt1Nr * pt2Nr, 3 Werte (X/Y/Z).
knotvector1: die
Abstandsparameter fuer Richtung 1; Anz. = pt1Nr + degree1 + 1
A
= FSUB Stützfläche Randkurve [Inseln ...]
A
= FSUB A S
// Stützfläche (SRU, BSP) getrimmt
A
= FSUB A S S
// Stützfläche getrimmt und 1 Loch
A
= FSUB A A S
// Stützfläche nicht getrimmt, 1 Loch
A
= FSUB B
// Konus od. Torus (unbegrenzt, ungelocht)
A
= FSUB B S
// getrimmt
A =
FSUB B S S
// getrimmt, gelocht
A
= FSUB B B S
// ungetrimmt, gelocht
Stützfläche:
kann sein:
A=SRU A=BSP oder
Fläche auf Kegel (konisch): einen
Solidkörper "Conus" wählen (B=CON ..).
Die Randkurve muss sich auf der
Stützfläche befinden. Ist die Aussenkontur mit der
Begrenzung der Stützfläche ident, kann die Stützfläche
auch als Randkurve angegeben werden.
P20=P(100
0 0)
P21=P(200 0
0)
P22=P20
Y(120)
P23=P21
Y(60)
P24=P20 P22
ANG(135) DX
P25=P21
P23 ANG(135) dx
C20=ARC
P23 P25 P21 dx
C21=ARC
P22 P24 P20 dx
#
Der Grundkörper:
B20=CON
C21 C20
# Die
Randkurve:
S20=CCV
P23 P22 C21 P24 P25 C20 P23
#
Die Konusfläche:
A20=FSUB
B20 S20
#
A#=RCIR,P#,P#,P#<,P#>
Vom ersten Punkt
gehen alle Strahlen aus (zB Konusmittelpunkt).
Beispiel:
P20=P(5,
-2)
P21=P(9,
-1)
P22=P(8,
3)
A20=RCIR,P20,P21,P22,P(4
3)
A#=RSTRIP,ptNr,P#,P#,P#<,P#>
Jeder
Streifen besteht aus zwei Reihen von je <ptNr> Punkten. Min.
Anzahl von Punkten ist 2 * ptNr. Für 2 Streifen sind (3*ptNr)
Punkte erforderlich.
Beispiel:
P20=P(2
0)
P21=P(4
0)
P22=P(6
0)
P23=P(8
0)
P30=P(2 0
5)
P31=P(4 1
5)
P32=P(6 1
5)
P33=P(8 0
5)
A21=RSTRIP,4,
P20,P21,P22,P23, P30,P31,P32,P33
Freiformflaeche aus Laengsschnittkurven und Querschnittkurven.
Typisch: 2 + 2 Randkurven.
Sonderform: 3 Randkurven.
Alle Laengs- und Querschnittskurven muessen ein Netz bilden -
- je einen gemeinsamen Punkt haben.
Eingabekurven koennen Linien, Kreisboegen oder Freiformkurven sein
(dzt nicht CCV - zusammengesetzte Kurve).
Beispielmodelle:
sample_area_bsp3 (5 x 4 Kurven)
sample_area_bsp5 (2 x 1 Randkurven)
sample_area_bsp7 (2 x 2 Randkurven)
Freiformflaeche aus Querschnittkurven.
Eingabekurven koennen Linien, Kreisboegen oder Freiformkurven sein
(dzt nicht CCV - zusammengesetzte Kurve).
Beispielmodell:
sample_area_bsp4
sample_area_bsp6
A#
= HAT Kontur Abstand Richtung
Richtung
= Schraffurwinkel in Grad
Beispiel:
P20=P(-500
500)
S21=CCV P20
P(400 900) P(400 300) P20
A20=HAT
S21 VAL(50) VAL(45)
Derzeit
noch keine Import / Export - Funktion für Schraffuren.
Derzeit
noch keine Funktion für gelochte Schraffuren.
B1=SPH P(0 0 0) 12
C1=P(0 0 0) 12
B2=SPH C1
B1=CON BasisKreis
Punkt_Kegelspitze
B3=CON Kreis_1
Kreis_2
Beispiel:
B20=CON P(0 0 0) P(100 0 0) VAL(60)
VAL(40)
C20=P(0 0 0) VAL(100) DX
C21=P(100 0 0) VAL(40)
DX
B20=CON C20 C21
B#=TOR Mittelpunkt
Hauptachse Radius_Hauptkreis Radius_Nebenkreis
B#=TOR C C
// Hauptkreis Aussenkreis
B#=TOR R
C
// Basisebene Aussenkreis
Die Nebenkreisachse liegt immer
normal auf Hauptachse.
Radius_Hauptkreis ist ganz an der
Aussenseite; ist also immer positiv.
Modifikator_Aussen_Innen:
erforderlich zur Auswahl einer Variante, bei der der
Radius_Hauptkreis kleiner als der Radius_Nebenkreis ist.
Beispiel:
B20=TOR
P(0 0 0) DZ VAL(100) VAL(25)
C20=P(100 0 0) VAL(25) DY
B20=TOR
P(0 0 0) DZ C20
Die gegenüberliegende
Fläche kann ein Punkt sein oder durch einen Vektor oder die
Dicke (z.B. Blechdicke) definiert sein.
Beispiele:
S20=REC P(100 0 0) D(50 0 0) D(0 12
0)
B20=PRISM S20 D(0 0 10)
C20=P(289 -20.8 0) VAL(125) DZ
B20=PRISM
C20 25
P20=P(768 -457 0)
S20=POL P20 P(930 -474 0) P(1029 -251
0) P(971 -246 0) P(891 -412 0) P(801 -407 0) P20
B21=PRISM S20
P(900 -500 200)
Models
M# = "<modelname>"
Position [Scale] [Refsys]
M20="Submodel1" P(100 0)
Beispiel
externes Model:
M20="Data/Niet1.gcad" P(100 0) 0.5 DZ
DIY
Beispiel Mockup-Model:
M21="Data/clocktwr.wrl"
P(0 0 0) R20
Geom.Modifikationen
(Cut (Trim), Intersect, Transform, Project, Mirror)
CAD-Modus: Checkbox
newObj bestimmt, ob das Element modifiziert wird oder ob ein neues
Element erzeugt wird.
CUT
Lineare
Elemente (Linien, Kurven) begrenzen, mit einem oder zwei
Schneidelementen:
obj=CUT
obj Schneidelement (Variante) (Schneidelement
(Variante))
Beispiel:
L20=P(-60
30 0) P(20 70 0)
C20=P(-14
40 0) VAL(32) DZ
C20=CUT
C20 L20 L20
#
Kreis C20 wird an beiden Enden begrenzt (getrimmt).
Parameterwerte
als Schneidelemente: dzt nur für B-Splines:
S21=CUT
S20 0.33 066
CUT
noch nicht für Flächen.
INTERSECT
<ErgebnisObjekt>=INT
<Obj1> <Obj2> [MOD(#)] [POL]
Mehrere Objekte (zB
mehrere Flächen) können mit U(obj1 obj2 ..) zu einer
Gruppe zusammengefasst werden.
Mit MOD() wird definiert, welches
Teilstück ausgegeben wird; zB MOD(2) wüde die zweite
Teilkurve ausgeben. (Offen: alle Teil-Lösungen als Gruppe
ausgeben).
Mit POL wird Polygon statt Spline ausgeben
#
Beispiel Intersection:
P20=P(-62.5 -63.7 0)
S20=CCV P20 P(-20
-70) P(-40 -15) P20
A20=S20
#
P21=P(-60 -110 20)
P22=P(S20
MOD(2) 1)
S21=POL P21 P20 P22
P21
A21=S21
#
R20=X(-35)
#
S22=INT U(A20 A21) R20
POL
#
TRANSFORM
Translation:
#
Objekte um einen Vektor verschieben (REV: Gegenrichtung).
#
obj=TRA obj vec/traVC [REV]
P20=P(100,0,0)
P21=TRA
P20 D(0 0 100)
T20=D(10
10 10)
P22=TRA
P21 T20
#
traVC (T20 im Beispiel): siehe Transformation
Rotation:
Objekte
um eine Achse drehen.
obj=TRA
obj traRot
L20=P(50
0 0) P(50 0 10)
P20=P(100
0 0)
T20=ROT L20
ANG(90)
P21=TRA
P20 T20
#
traRot (T20 im Beispiel): siehe Transformation
Transformation:
#
Objekt aus einem Referenzsystem in die Hauptlage transportieren.
#
Als Referenzsystem kann jede Ebene benutzt werden.
#
obj=TRA obj refSys REV
R20=P(100
100 25) D(-1 0 2)
L20=P(100
100 25) P(100 120 25)
L21=TRA
L20 R20 REV
#
Objekt (aus dem Hauptachsensystem) in ein anderes Referenzsystem
transportieren
#
obj=TRA obj refSys
P21=TRA
P(0 0 10) R20
PROJECT
Lineare
Elemente auf eine Ebene projizieren.
obj=PRJ
obj Plane
S20=PRJ
S20 R20
# Kurve
S20 wird auf die Ebene R20 projiziert.
MIRROR
Lineare
Elemente um eine Ebene spiegeln.
obj=MIR obj
Plane
S20=MIR S20 R20
# Kurve S20 wird um die Ebene R20
gespiegelt.
Derzeit nicht für Flächen.
Variablen
Direktzuweisung:
V20=10
Rechnen mit
Operatoren:
V21=V20+10
ACHTUNG: es ist Klammerung
entspechend der Operatorpriorität erforderlich
!
V22=10+(V21*3))
// ergibt 70
V22=10+V21*3
// ergibt 90
Rechnen mit Funktionen (sqrt, sin, cos,
tan):
V23=SQRT(9)
Absolutwert (das Vorzeichen ist immer
positiv)
V24=ABS(V20)
Integerzahl - den Rest hinter
dem Komma abschneiden;
V25=FIX(1.8)
// ergibt 1.0
Runden. Beispiel: 1.3 wird zu 1.0, 1.8
wird zu 2.0, -1.3 wird zu -1.0, -1.8 wird zu
-2.0.
V26=RND(V20)
Abstand Punkt-Punkt:
V5=P1
P2
Normalabstand von Punkt zu Linie:
V6=P1 L2
Länge einer Linie:
V7=L10
Radius
eines Kreisbogens:
V9=C10
Die X / Y / Z -
Koordinaten eines Punktes:
V7=X(P1)
V8=Y(P2)
V9=Z(P2)
Vordefinierte Variablen: PI
(3.1415..)
V1=PI*180
Durchmesser errechnen
zB:
V10=C10
V10=V10*2
PRI V10
// anzeigen
Numer. Variablen werden
indirekt durch Funktion VAL() benutzt; Beispiel:
C10=P10
VAL(C5)
(es wird der Radius des C5 übernommen).
In
den CAD-Eingabefeldern können als Zahlenwerte (zB für
Radius) nur Variablen, PI, die Grundrechnungsarten und mathemat.
Funktionen benutzt werden (nicht die Funktionen X,Y,Z sowie L,
C).
Winkel
- ANG()
REV (revert, umdrehen)
oder
ANG(Winkelwert). Der Winkelwert wird dem Ergebniswert
aufaddiert.
# Winkelwert
ANG
(Winkelwert [REV])
ANG
(D [ANG()/REV])
ANG
(L [ANG()/REV])
ANG (P P [ANG()/REV])
P20=P(69.9
-60.7 0)
P21=P(119 -20.3 0)
P22=P(122.1 -65.1 0)
L20=P22
ANG(P20 P21)
L21=P22 ANG(P20 P21 ANG(90))
Interaktionen
Interaktionen benutzen Typ
"I".
Bei Selektion des CAD-Objekts (Ankerobjekts) wird
die Interaktion ausgelöst.
Beispiele für Interaktionen
sind:
- Ein Folgemodell laden (wie HTM-HREF; LDMOD)
-
Viewposition wechseln (Ansicht ändern, VIEW)
- Ein
Plugin-Programm (DLL) starten / ausführen
(EXECM)
Format Interaktion:
I20 = <Ankerobjekt>
"<Command>"
Commands:
Ein Modell
laden:
LOAD
"symbol.Verzeichnis/Modelname"
Den
Viewport verändern:
VIEW
<viewPortDaten>
Mit Insert/ViewPort (oder
Alt-Shift-V) kann man die aktuellen Viewport-Daten generieren.
Ein Plugin-Programm (DLL) starten / ausfuehren:
EXECM DLL-Name
Achtung: das Programm darf keine
Rekursion enthalten
(zB "UI_butCB (NULL,
(void*)"butEND");").
Die gleiche
Interaktion für ein weiteres Objekt aktivieren -
Beispiel:
I20 = N20 "VIEW ..."
# Bei Selektion von N20 Ansicht ändern
I21
= N21 I20
# Auch bei Selektion von Objekt N21
die gleiche Interaktion I20 ausführen.
Beispiele:
I1
= M1 "VIEW ...."
# Bei Selektion von Model1 wird
der angegebene Viewport aktiviert.
I2 = P20 "LDMOD
"Data/Assy_H86""
# Bei Selektion von Punkt 20
wird Model Assy_H86 geladen.
I3 = N20 "EXECM
tst3"
# Bei Selektion von Note 20 wird Plugin-Programm
tst3.so gestartet.
Graf.
Attribute
Farben,
Linientypen, Strichstärken
Es
gibt 265 Layers (0-255), Standard ist Layer 0.
Es können bei
einigen Befehlen alle Layer mit "ALL" angesprochen werden.
Beispiel - alle
roten Obj von Layer 5 dem Layer 12 zufügen :
LAY 12 ADD LAY 5
COL 2
Es existiert eine Tabelle für die
Linienattribute.
Diese Tabelle besteht aus je einem Wert für
Farbe, Strichtyp und Strichdicke.
G21=Farbe, Strichtyp,
Strichdicke
Farbe:
0=keine
1=schwarz
2=rot
3=grün
4=blau
5=gelb
6=magenta
7=cyan
8=weiss
9=Hilite
10=dimmen
11=Fläche
blau
12=Fläche rot
13=Fläche grau.
1 = Strich-Punkt-Linie
2 = strichliert kurz
3 =
strichliert lang.
1 bis
max. 15.
Beispiel:
Die
Tabellenplätze 0 bis 12 sind vordefiniert:
0
= Default; Defaultfarbe, Vollinie, normal.
1 =
Defaultfarbe, Vollinie, dünn.
2 = Defaultfarbe,
strichliert, dünn.
3 = Defaultfarbe,
Strich-Punkt-Linie, dünn.
4 = Tool left;
Fläche blau
5 = Tool right; Fläche rot;
6 = Tool off; Fläche grau.
7 =
Symbole, Schwarz, Voll, Dicke = 2.
8 = Aktives
Element; Grün, Voll, Dicke 3.
9 = Selektiert;
Hilite-farbe, Voll, Dicke 4.
10 = gedimmt; Farbe gedimmt,
Voll, Dicke 1.
11 = 2. Farbe Bearbeitung Oberseite;
Default, Voll, Dicke 2.
12 = dick, rot, strichliert
HILI
Entspricht auch dem
"G9".
Rücksetzen mit G1 (aktivieren Default).
DIM
Entspricht auch dem "G10".
Rücksetzen
mit G1 (aktivieren Default).
Diese Objekte werden nicht exportiert
!
NOP
ON
Rücksetzen mit NOP OFF.
Defaultfarbe für
Flächen:
Rot/Blau/Grün sind als
Zahlenwerte von 1 bis 255 zu definieren; 1,1,1 ist schwarz.
Beispiel
stahlblau:
DEFCOL 200 200 220
MultiModelsupport
Interne
Submodels
Während der Bearbeitung werden Submodelle in
<base>/tmp/Mode_<submodelname> zwischengespeichert.
Alle
internen Submodels werden im Modelfile abgespeichert.
Erzeugen von
Submodels:
- move main --> new submodel
alle Objekte des aktiven Mainmodel in ein Submodel umkopieren.
-
create new submodel
Ein neues Submodel anlegen
und aktivieren.
- load submodel from file
Ein natives Model aus einer Datei in eine neues Submodel laden.
Benutzen von internen Submodels im CAD-Modus:
mit
der Funktion 'M-int.Modell'
durch Key-In von zB:
Externe
Submodels
Die Modellbezeichnung
muss einen symbolischen Pfad enthalten.
Die Modelldatei muss in
einem Verzeichnis liegen, das über ein Symbol angesprochen
werden kann.
Siehe Symbolische
Dateibezeichnungen.
Externe Modelle dürfen dzt nur
Mockup-Modelle (zB WRL), jedoch keine internen oder externen
Submodelle beinhalten !
Externe Submodels werden nicht intern
zwischengespeichert.
mit der
Funktion 'M-ext.Modell'
Benutzen von externen Submodels im
MAN-Modus:
durch Key-In von zB:
M20="Data/Mod1.gcad"
P(0 0 0) DZ DIY
Symbolische
Dateibezeichnungen:
"<symbolischer_Pfad>/<Dateiname>"
Das Symbol ist
frei wählbar.
Pfad interaktiv definieren mit
"Standards/Directories".
Eine Modelbezeichnung wäre also zB
"Data/Niet1.gcad".
Programmierumgebung
stat
Statusanzeige;
Anzahl der freien / belegten Elemente
anzeigen.
Variablen
Unterprogrammtechnik
Programmierfunktionen
Unterprogramme
können zum Erzeugen von Geometrieelementen und
NC-Bearbeitungswegen benutzt werden.
MAC
unterprogrammName
Beginn allgemeines Unterprogramm. Im
Unterprogramm kann auf alle Variablen zugegriffen werden. Allgemeine
Unterprogramme werden für den Postproz. aufgelöst.
Verschachtelungstiefe: bis max 10 Ebenen
tief.
UnterprogrammName muss aus mindestens 2 Buchstaben bestehen,
dann können Ziffern folgen.
Geometr. Elemente werden in die
DB gespeichert, aber nicht angezeigt.
END
Ende allgemeines
Unterprogramm.
CALL unterprogrammName
Aufruf allgemeines
Unterprogramm an der momentanen Position.
Achtung: der
Unterprogrammname muss auch betreff Gross / Kleinschreibung völlig
ident sein.
CALL "Dateiname"
Ein in einer
Datei befindliches Unterprogramm ausführen. Das Unterprogramm
ist ohne MAC und END abzuspeichern. Derzeit kann in solchen
Unterprogrammen nicht in ein weiteres Unterprogramm verzweigt
werden.
--------------------------------------------------------------------------------------
GEO
UnterprogrammName
Beginn Geometrieunterprogramm. Das erste Element
ist die Startlinie, dann die Kontur, das letzte Element dieses
Unterprogrammes ist die Ausfahrlinie. Entlang der Startlinie wird die
Korrektur aufgebaut, entlang der Kontur wird mit Korrektur
geschnitten (G40, G41 oder G42), entlang der Ausfahrlinie wird die
Korrektur wieder abgebaut.
UnterprogrammName muss aus mindestens 2
Buchstaben bestehen, dann können Ziffern folgen.
Im
Unterprogramm kann auf alle Variablen zugegriffen werden.
Verschachtelungstiefe: bis max 10 Ebenen tief.
Geometrieunterprogramme werden für den Postprozessor als
Unterprogramme angelegt.
END
Ende Geometrieunterprogramm.
MAC
Kreis1
V2=V1*2
PRI "V2=" V2
P1=V1 V2
END
V1
= 16
CALL Kreis1
V1 = 20
CALL Kreis1
PRI "P1="
P1
ZSUR2 20
P20=P(100 100)
P21=P(200 100)
MAC
Kreis1V
# V1=Rad
TL 1
P1901=P0
V2=V1*2
PR V1,0
AR
-V2,0,-V1,0
AR V2,0,V1,0
TL 0
END
TL 0
FROM 50,50
RP
P20
V1=16
CALL Kreis1V
RP P21
CALL Kreis1V
RP P21
# Kommentar
# Testausgaben von Texten / Variableninhalten:
# (nur zu Testzwecken im Meldungsfenster)
PRI "Text"
PRI "Punkt1 =" p1
PRI "Var 1 =" v1
# Verzweigen, unbedingter Sprungbefehl.
JUMP Labelname
..
:Labelname
# Das Sprungziel. Achtung: muss auch betreffend
# Gross / Kleinschreibung völlig ident sein.
# Programm beenden (alle folgenden Zeilen ignorieren)
EXIT
Bedingte Verzweigung mit if
if Wert Bedingung Wert ; Befehl
Es gibt folgende Bedingungen:
eq gleich,
ne nicht gleich,
lt kleiner,
gt groesser,
l_e kleiner oder gleich,
g_e groesser oder gleich.
# Beispiel
V20=10
:Next
PRI "Var 20 =",V20
V20=V20+10
IF V20 LT 55 ; JUMP Next
Ausgeben/Einlesen von Befehlscodes in/aus Datei:
Mit Write kann in eine Datei ausgegeben werden; die Datei
wird im Temorärverzeichnis von gcad angelegt, der Dateityp
.write ist fix. Diese Dateien werden beim Laden des nächsten
Modells automatisch gelöscht.
Es werden alle Textzeilen von WRITE bis ENDWRITE in die
Textdatei {filNam}.write ausgegeben.
Der Dateiinhalt kann mit dem Befehl CALL geladen werden.
# Beispiel WRITE/CALL: save Parameters to File
WRITE "TestPar1"
V20=15
V21=16
ENDWRITE
# load Parameters from File
CALL "TestPar1"
PRI "V20=",V20
# use Parameters
P20=0 0 0
#V20=5
#
P20=P20
P21=P20 Z(12)
B20=CON P20 P21 VAL(V20) VAL(V20)
#
NC-Bearbeitungsfunktionen
Die
aktuelle Position kann jederzeit über den Punkt P0 abgefragt
und somit später wiederbenutzt werden.
TL
1
Werzeugwechselbefehl (mit Werzeugnummer);
TL 0
das
Werkzeug entladen.
FROM
FromPunkt
Definiert die angegebene Position als Startpunkt
eines Konturprogrammes. Diese Anweisung darf nur einmal im
Hauptprogramm und einmal in jedem Geometrieunterprog. definiert
werden. Beispiel: " FROM 100,100" oder "FROM
P20"
RP Punkt
Rapid - Verfahranweisung absolut.
Darstellung: oben blau / strichliert, unten rot.
RPR
X-Abstand,Y-Abstand
Rapid - Verfahranweisung relativ.
WORK
P10
WORK P(100 100)
Direktverfahranweisung über Angabe von
Koordinaten oder eines APT-Punktes.
PR xAbstand,
yAbstand
Definition einer relativen Verfahrstrecke.
NICHT
AKTIV:
A Endpkt Mittelpkt <Drehrichtung>
Definition
Kreisbogen, Absolutkoordinaten. Der Kreisbogen beginnt an der
momentanen Position.
Standarddrehrichtung ist Gegenuhrzeigersinn
(CCW)
AR
Endpkt Mittelpkt <Drehrichtung>
Kreisbogen mit relativen
Koordinatenangaben. Der Kreisbogen beginnt an der momentanen
Position, Endpunkt und Mittelpunkt werden relativ zu diesem
Startpunkt definiert. Wird, beginnend an der momentanen Position,
sofort abgearbeitet. Beispiel:
AR -10 10 -10 0 CW
AR
10,10,0,10
Viertelkreis (von 270 bis 360 Grad) im
Gegenuhrzeigersinn.
POCKET Randabstand
Schnittabstand
Definiert die Parameter für nachfolgende
Pocketzyklen.
Aufruf
Geometrieunterprogramm an der momentanen Position. Die Startposition
ist also vorher mit "RP .." od. "P1"
anzufahren.
Konturen können in Unterprogrammen (GEO) abgelegt
und mit WORK mehrfach aufgerufen werden.
Bearbeitungstypen:
CUT
KonturName [Parameter]
REV KonturName [Parameter]
SEP_CUT
KonturName [Parameter]
SEP_REV KonturName [Parameter]
POCK
KonturName KonturStartpunkt
CUT_CIR Radius Startrichtung
Umfahrungswinkel Ausfahrstrecke [Stopwinkel]
POCK_CIR
Radius_aussen Radius_Bohrloch [Mittelpunkt]
<winkelwert>
Verdrehen. Direkt den Winkel angeben.
xmir
um die X-Achse spiegeln
ymir
um die Y-Achse spiegeln
Beispiel; Macro S20 um X gespiegelt,
um 30 Grad gedreht an der momentanen Position abarbeiten. Wird
gespiegelt und gedreht, so wird zuerst die Spiegelung, dann die
Drehung ausgeführt.
WORK S20 30 XMIR
SEP_ sind
Trennschnitte (es wird automatisch ein Konturprogramm erzeugt, das
eine offene Kontur schliesst).
Die Position nach dem
Unterprogramm kann über den Punkt P0 abgefragt und so später
wiederverwendet werden.
WORK Beabeitungtyp "Dateiname"
Ein
in einer Datei befindliches Unterprogramm ausführen.
Das
Unterprogramm ist ohne GEO und END abzuspeichern.
Derzeit kann in
solchen Unterprogrammen nicht in ein weiteres Unterprogramm verzweigt
werden.
Beispiele:
S3=CCV S2
ZSUR2 1
FROM 16 -2
RP 16
0
WORK CUT S3
WORK CUT P(10 0)
NC-Hilfsfunktionen
Neu in Version 1.12 / 2007-10-20
neue Funktionen:
- import Mesh from Landmark-XML-Files
- create Clothoid-Curve
(see CAD - "S Clotoid" - Help)
- compress/decompress native modelfiles (with gzip)
- 1-n Objekte zu B-Splinekurve verbinden
(see CAD - "S BSpline < join obj's" - Help)
- Circ from startpoint, tangent and radius
(see CAD - "ARC PT Tang Radius Angle" - Help)
- Vectors tangential to curves
(see CAD - "VEC tangent. (Circ, Elli, Bsp, Cloth) - Help"
- import mesh from Landmark.xml - files
Bugfixes:
- Iges-Import-Bug with Qmax/Qflex3D-files fixed
- VRML2-Export-Bug with big surfaces fixed
- DXF-Import-Bug limiting to 10000 input-objects fixed.
Neu in Version 1.100 / 2007-09-01
neue Funktionen:
- Delete/Restore-Funktionen neu implementiert (Ctrl-Z/Ctrl-Y)
- Konstruktionsebene (ConstructionPlane, UserCoordinateSystem) neu in CAD
- B-SplineKurven exact durch Definitionspunkte
- Freiformflaechen durch Querschnittkurven
- Freiformflaechen durch Laengs- und Querschnittkurven
- Freiformflaechen durch 4 oder 3 Randkurven
- B-SplineKurven aus isoparametrischen Flaechenkurven
- Projektion Punkt auf Freiformflaeche
- Schnittpunkt Linie / Freiformflaeche
Neu in Version 1.08 / 2007-05-08
neue Funktionen:
- Normteilbibliotheksfunktionen Catalog (Catalog_de.htm)
- Modify subModelPosition (Translate/Rotate/Surface-to-Surface)
- Export im Format STL; subModels werden exploded (f. Blender)
- WRL-Export: es werden auch Mockup-subModels (wrl,stl,..) exportiert
- neue Funktion WRITE/CALL zur Erzeugung von Parametrikmodellen (gCAD3D_de.htm)
- neue Konstante Variablen (RAD_1 SR_3 .. siehe Doku Variablen)
- Linuxversion nun mit gcc4.1.1
Fehlerkorrekturen:
- Fehler bei JUMP in subModels korr.
- alle DLL's (.so) nun im Unterverzeichnis bin
Neu in Version 1.06 / 2007-03-27
neue Funktionen:
- Import STL-Files (Ascii)
- neue interaktive Help-Funktion fuer CAD
- Dateityp ".dat"fuer das native Format geaendert in ".gcad"
- Samplemodell fuer texturierte Flaechen.
- Fehler MS-Win CAD-GruppenEingabe korrigiert
- MS-Win: Portierung auf Express-2005-Compiler (VC8)
- MS-Win: Portierung auf GTK-Version 2.10
Neu in Version 1.04 / 2007-01-01
neue Funktionen:
-Intersection Surface X Plane
KeyIn Objektname bei Dump/Obj und Group/Add
-Linux: erste Version mit Installer gxInstall.
Neuin Version 1.02 / 2006-09-13
neue Funktionen:
-VRML2-Export (VRML-97; noch keine Texturen, noch kein VRML2-Import)
- DXF-out: Flaechen werden als 3DFACE's exportiert (nicht subModels)
- interaktiv Farbe und Transparenz fuer Flaechen setzen
- neues Objekt 3D-Dimension (NOTE N DIM3)
- neues Objekt Note mit 3D-Punktkoordinaten (N PointPos; N=LDRP)
- neues Objekt Note mit Kreis (N Text,LN,Circle; N=LDRC)
- neues Objekt Symbol Stern, .. Vektoren (N Symbol; N=LDRS)
geändert:
- BlockNote (N=TAG); Parameterreihenfolge geaendert.
Neu in Version 1.00 / 2006-05-10
neue Funktionen:
- CAD: Linetyp interaktiv modifizieren
- CAD: SurfaceStyle (shaded od. symbolic) interaktiv modifizieren
- CAD: Parametrische Definition für Punkte auf Line,Circ, Curve.
- CAD: Parametrische Definition für Segmente von Polygon, CCV.
geändert:
- Displayprobleme bei modifierten Elementen (CUT ..) korrigiert
- STEP-Import: Fehler bei sehr grossen Modellen korrigiert
- NC-Replay-Fehler korrigiert
Neu in Version 0.98 / 2006-02-24:
neue Funktionen:
- STEP-Import: Assemblies und Rational-B-SplineCurves/Surfaces;
- VRML1-Export: Assemblies (subModels).
- Interaktiv: Gruppe bilden und (native) exportieren.
- Interaktiv: Circ - neue Funktionen
geändert:
- Keyword MOCK obsolet
-Fehlerkorrekturen ..
Neu in Version 0.96 / 2005-11-10:
neue Funktionen:
- STEP-Import (ISO-10303-21 - AP203). Getestet mit CATIA-V4 und CATIA-V5.
Noch nicht unterstützt: Rational-B-SplineCurves.
- CAD-Funktion Prisma (Solid)
geändert:
- VRML1: Problem grosse Importmodelle korr.
Neu in Version 0.94 / 2005-06-17:
neue Funktionen:
- MS-Win: NISI-Installer
- Parallelogramm (S=RECT vec1 vec2)
- Solids: Kugel (B=SPH center radius)
- Solids: Prisma von Parallelogramm (B=PRISM parallelogramm vektor)
- VRML1: Sphere und Cone neu zu.
geändert:
- Linux: GTK+2 (bisher GTK+1.2); gtkglarea statisch gelinkt.
- MS-Win: GTK+2 + GtkGLExt (bisher GTK+1.2 + gtkglarea)
- Fehlerkorrektur bei Import VRML1 und Import Iges
- Fehlerkorrektur bei NC (siehe Modell sample_nc0.dat)
Neu in Version 0.93 / 2005-05-11:
neue Funktionen:
- Symbole als selektierbare Objekte (N=TAG ..)
geändert:
- Fehlerkorrektur bei Import VRML1 und Import Iges
- Fehlerkorrektur bei Import Bitmaps (padding)
- Fehlerkorrektur bei Export Mockup (VRML1, OBJ, TESS)
Neu in Version 0.92 / 2005-04-11:
neue Funktionen:
- Import/Export von VRML-1-Files als Mockup-Modelle (nur FaceSets)
- Import/Export von WaveFront-OBJ-Files (nur Faces)
- Transformation von Kurven und Flächen (Translation, Rotation, Transformation)
- Transformation in anderes Referenzsystem
- Transformation aus Referenzsystem in das Hauptachsensystem
- Darstellung von Bitmaps (BMP-Files) fuer Dokumentationen
- Toolbar und der Messagebar können ausgeblendet werden (Vollbild)
geändert:
- Aufbau der Flächen vom Typ_SURCIR und Typ_SURSTRIP
- Bitmap-Notes; "N#=TXA .." ersetzt durch "N#=TAG 0 .."
Neu in Version 0.90 / 2004-12-30:
neueFunktionen:
- Iges/Dxf-Modelle können als Startparameter angegeben werden
(für Start aus einem Filebrowser)
- neuer Funktionsmodul "Viewer"
- File/Open: DXF/IGS - Modelle werden nun entspechend Filetyp automatisch importiert.
- Dimensions fertiggestellt (Linear-, Winkel-, Radiusvermaßung)
- Texte: Sonderzeichen, Textsize nun in den Defaults.
- CAD-Funktion Suchen/Löschen/Modfizieren verbessert
- CAD: direkte Selektion von Objektendpunkten, Polygonpunkten ..
- DXF-Import von LWPOLYLINE u DIMENSION u MTEXT
- neue Kreisdefinition: Circ = Mittelpunkt Startpunkt Drehwinkel Z-Achs-Vektor
geändert:
- Definition Alfatext (N#=TXA <Position> <Text>- TXA kommt dazu)
- Kreisdefinition Circ = Mittelpunkt Radius: - Z-Achsvektor hinzu ("DZ").
- struct Dimen: char dtyp zu.
Neu in Version 0.86 / 2004-10-10:
neue Funktionen:
- Viewer: Mittelpunkt für 3D-Rotation durch Selektion eines beliebigen Vertex
- CAD: RevolutionSurfaces (Rotationsflächen)
- CAD: Funktion CUT (trimmen von linearen Elementen)
- CAD: Funktion TRANSLATE (verschieben / drehen von linearen Elementen)
- CAD: Funktion PROJECT (lineare Elemente auf Ebene projizieren)
- CAD: Funktion MIRROR (lineare Elemente um Ebene spiegeln)
- CAD: Analysefunktionen (Objekt dekodieren, Abstand / Normalabstand messen)
- Iges-Import: Getrimmte, gelochte RuledSurfaces (144 - 118) und getrimmte,
gelochte RevolutionSurfaces (144 - 120).
- Iges-Export: B-Spline Flächen Ent. 128 und Rev.Surfaces, Ent. 120.
- DXF-Export: Ellipsen und B-Spline-Kurven werden als POLYLINE ausgegeben.
geändert:
- Objekttyp "T" zur Definition geometr. Transformationen (war ToolDef).
- struct Circ: Öffnungswinkel ango zugefuegt
Neu in Version 0.84 / 2004-07-08:
neue Funktionen:
- begrenzte, gelochte Flächen mit Stützfläche (Ruled, B-Spline, Konisch Toroid).
- Definition f. gelochte planare Flächen
Neu in Version 0.82 / 2004-04-30:
neue Funktionen:
- Planare gelochte Flächen aus CIRC / Ellipse / B-Spline / CCV (A = FSUB)
- Iges-Import u. Export von planaren gelochten Flächen (Ent. 144, 142, 102)
- automatisches Vergrössern aller Datenfelder (realloc)
- automatisches Laden von Modellen / Programmen (durch Startparameter)
Neu in Version 0.80 / 2004-02-02:
neue Funktionen:
- interne und externe Submodels
- Konstruktionsebene frei definierbar
- neue Iges-Import-Elemente 118,122,144,308,408
- neue Iges-Export-Elemente 118,308,408
- RuledSurface aus Grundelement und Vektor
geändert:
- Startupfile nun <base>tmp/Model (war <base>tmp/xa.apt)
- File/Open nur auf Verzeichnisse in Datei <base>/xa/dir.lst
- Definition Torus abgeändert
Neu in Version 0.77 / 2003-11-14:
Neue Plattform MS-Windows.
neue Funktionen:
- neue Printertreiber
(Postscript(Vektoren), PCL5(via GL), HPGL).
Programming:
- neues Beispiel Postprozessor (DemoPostProc.*, mit Sourcecode).
- struct Ellipse geändert in struct CurvElli (see VC98\include\wingdi.h)
- struct Polygon geändert in struct CurvPoly (see VC98\include\wingdi.h)
Neu in Version 0.74 / 2003-09-15:
- CAD_Interface für planare Flächen, Fläche auf Konus,
Fläche auf Torus(Menü Flächen - A)
- CAD-Interface für die Objekte Konus, Torus (Menü Solids - B)
- Darstellung getrimmter Flächen durch integrierte Dreieckszerlegung
(Tesselation) für planare Flächen, Flächen auf Konus,
Flächen auf Torus.
- neues Auswahlmenue (Popup) bei Selektion graf. Objekte, wenn mehrere Objekte
genau übereinander liegen.
- CAD-Interface für neue Funktion Schraffur (Menü Flächen - A)
- Eingabefenster für div. Toleranzwerte (Standard/Tolerances)
- Definition Drehmittelpunkt (ViewZ) verbessert.
- Fehler beim Resolv Contours korr.
Neu in Version 0.72 / 2003-08-04:
- Schnittpunkte Circ/B-Spline, Circ/Ellipse, Ellipse/Ellipse, Ellipse/B-Spline.
- interaktives Objekt Polygon (im Menü Kurven - S)
- proj. PT-> Polygon, Tangente an Polygon
- Schnittpunkte Polygon - Line, Circle, Ellipse, B-Spline, Polygon.
- Kreise: Bei Vollkreisen mit Z-Vektor nach -Z nun Z-Vektor immer nach +Z
Neu in Version 0.70 / 2003-06-25:
- Neue Funktion HIDE / VIEW (Ausblenden / einblenden von Objekten)
- CAD-Menue Curves("S") grundlegend erneuert
- Kontur (CCV- CompositeCurves) neu zu (im Menue "S" - Curves)
- Neuen CAD-Menüpunkt Ruled Surface.
- NC-Funktionen geändert; Konturen integriert.
- Neuer interaktiver NC-Editor (Menü NC-Tech)
- Neu Iges Import CCV's (Typ 102)
Neu in Version 0.6.2 / 2003-04-18:
- Modul CAD grundlegend erneuert
- Fehler "erzeugt nur 2D-Punkte" korrigiert
- mehrere neue und korrigierte Vektordefinitionen.
- neue Transformationsfunktion für Punkte: P=R P
- neue Projektionsfunktion für Punkte: P=P R
- Ellipse neu
- Dimensions neu (Entwurf)
- Neu IgesImport / Export 108 (Plane), 104 (Ellipse)
Ende Dokumentation gCAD3D
style="font-family:
helvetica,arial,sans-serif;">