Einleitung
Dieser Text entstand mit einer Vorabversion von FreeCAD 0.20.
Parametrische Bemaßung ist sozusagen eine ferngesteuerte Bemaßung: Ändert sich hier etwas etwas, muss sich dort etwas anpassen. In einer Konstruktion bedeutet dies: Wird der Rohrdurchmesser geändert, folgt der Flansch automatisch...
Hier werden die diesbezüglichen Methoden von FreeCAD anhand eines einfachen Beispiels gezeigt.
Tipp: Wer nicht gerne am Bildschirm liest, sollte es mit dem Smartphone versuchen.
Beachten muss man, dass FreeCAD prinzipiell gleichartige Aufgaben oft im Detail unterschiedlich löst. Eine Bezugsebene positioniert man anders als eine Skizzenebene, ein Parameter heißt in einer Skizze anders als in einer Tabelle, man überträgt sie aus einer Skizze anders als aus einer Tabelle, Drehungen von Ebenen ...
Das Beispiel

Abb.01: Klotz mit Bezugsebene
Auf die Schräge eines Klotzes soll eine Bezugsebene [Datum Plane] gelegt werden. Wenn die Maße des Klotzes geändert werden, soll sich die Bezugsebene automatisch anpassen (→ Abb.01).
Weiter unten wird eine Skizzenebene [Sketch] statt einer Bezugsebene verwendet.
Der Klotz steht auf der xy-Ebene symmetrisch zur yz-Ebene. Das muss man wissen, wenn man Maße aus der Skizze (→ Abb.03b) übernimmt.
Download: Klotz.FCStd
Ist jedes Maß ein Parameter ...?
In den Arbeitsbereichen PartDesign und Sketcher kann man das so sehen, denn wenn man dort Maße (= Parameter) ändert, folgen die Skizze und/oder das 3D-Modell. In technischen Zeichnungen ist ein Maß definitiv kein Parameter, weil diese Maße nur nach außen angezeigt werden, aber selbst nichts bewirken.
Da es mir auf dieser Seite um die "Fernübertragung" von Maßen geht, werde ich den Begriff Parameter nur dafür verwenden.
Positionieren per Mausklick: Bezugsebene direkt an die Schräge binden

Abb.02: Markierte Ebene
Die bequemste Methode ist leider die ungeeignetste, weil sie dem topologischen Benennungsproblem unterliegt.
Trotzdem sei sie genannt:
Arbeitsbereich Part Design
- Grafikansicht - Klick auf die schiefe Ebene (→ Abb.02)
Bezugsebene erstellen [DatumPlane]
→ Bezugsebene liegt auf der schiefen Ebene
Bezugsebene mit Parametern aus einer Skizze steuern
Deutlich weniger bequem ist es, Parameter aus der Skizze für die Positionierung der Bezugsebene zu übernehmen. Dafür sind diese Methoden einigermaßen sicher vor dem topologischen Benennungsproblem.
Vom Maß zum Parameter in einer Skizze
Das Kind braucht einen Namen, wenn man es rufen will, und das gilt auch für Parameter.
Wenn man in einer Skizze Maße zuweist, kann man ihnen einen (Parameter-)Namen geben und damit zu einem Parameter machen, der überall abrufbar ist.

Abb.03a: Maske Länge einfügen
In unserem Beispiel soll eine Ebene auf der Schräge abgelegt werden, also müssen mindestens diesbezügliche Maße "parametrisiert" werden:
Neues Skizzenblatt auf die yz-Ebene
- Skizze erstellen, Nullpunkt links unten (→ Abb.03b)
Y-Maß bemaßen (→ Abb.03a)
- Länge: 10 mm
- Name: hr
- ... (→ Abb.03b)
Extrusion [Aufpolstern, Pad]
Länge 60 mm, symmetrisch.

Abb.03b: Skizze mit Parameter
(yz-Ebene, Nullpunkt links unten)
Wenn man Parameter aus Skizzen übernimmt, muss man ihre Namen vollständig eintippen, also liegt die Würze in der Kürze:
- hr: Höhe des Randes
- hs: Höhe der Schräge
- bs: Breite der Schräge
- br: Breite des Randes
So lassen sich die (Parameter-)Namen in der Skizze anzeigen:
- Menüleiste - Bearbeiten - Einstellungen - Skizze - Anzeige - Zeige Namen der maßlichen Einschränkung ..: ein

Abb.03c: Sketch -
Aufgabenansicht - Constraints
Bei geöffneter Skizze kann man (Parameter-)Namen und Maße auch bearbeiten in:
Aufgabenansicht [Task Panel] - Constraints (→ Abb.03c)
Bei geschlossener Skizze kann man die Parameter-)Namen einsehen und die Maße bearbeiten in:
Baumansicht [Tree View] - Sketch00x (markieren) - Eigenschaften [Sketch Property] (→ Abb.03d)

Abb.03d: Sketch -
Eigenschaften - Constraints
Parameter aus Skizzen übertragen: Bezugsebene positionieren
Nun müssen die Parameter mithilfe ihrer Namen zur Positionierung der Ebene übernommen werden. Damit man die Maße aus der Skizze (→ Abb.03b) direkt übernehmen kann, stützt man die Bezugsebene auf der xy-Ebene ab. Das heißt, die im folgenden eingegebenen Parameter messen ab der xy-Ebene:

Abb.04a Maske Ebenenparameter
Arbeitsbereich Part Design
- Baumansicht - Origin - XY-Ebene (markieren)
Bezugsebene erstellen [DatumPlane]
→ Ebenenparameter (→ Abb.04a)- (Stütz-)Ebene: XY_Plane (automatisch übernommen)
- Versatz ... in z-Richtung:
- = (Gleichheitszeichen eingeben)
oder Formeleditor aufrufen [Ausdruck einfügen, Bound Expression]
- = (Gleichheitszeichen eingeben)
- Sk... (eintippen)
→ Auswahl erscheint - Sketch00x (die Skizze wählen, die die Maße enthält, z.B. Sketch001)
→ Sketch001.
steht mit Punkt in der Formeleditorzeile. - Sketch00x.Co... (weiter eintippen)
→ Auswahl erscheint - Constraints (wählen)
→ Sketch00x.Constraints
steht ohne Punkt am Ende in der Formeleditorzeile. - Sketch00x.Constraints.hr (Punkt ergänzen und weiter den Parameternamen eintippen)
→ keine Auswahl, deshalb kurze Namen empfohlen.
→ Meldung "Failed to parse expression" wechselt zu "Ergebnis: 20 mm" - OK
Zum Versatz in z-Richtung siehe → Anmerkungen zum Koordinatensystem von Ebene
Rechnen mit Parametern im Formeleditor: Berechnung des Winkels der Schräge

Abb.05a Formeleditor mit Formel
in der Maske Ebenenparameter
Ebenenparameter (Abb.04a) will für die Neigung der Schräge einen Winkel wissen. So etwas kann der Formeleditor überall da berechnen, wo man Maße eingeben kann:
- Wenn die Maske Ebenenparameter bereits geschlossen ist, muss sie wieder geöffnet werden:
Baumansicht - DatumPlane (Kontextmenü mit rechtem Mausklick) - Bezug ändern (wählen) - Es empfiehlt sich, den Parameter
Sketch00x.Constraints.hr
in die Zwischenablage zu kopieren:
Versatz ... in z-Richtung: blaues rundes Symbol (anklicken) - (Formel markieren) - Strg-C
- Versatz ... um die x-Achse: = oder
Abb.05b Formel für den Winkel
→Formeleditor (→ Abb.05a)- Die Formel (→ Abb.05b) in FreeCAD-Formeleditor-Schreibweise lautet:
atan(Sketch001.Constraints.hs/Sketch001.Constraints.bs)
Ohne Gleichheitszeichen und atan statt arctan! (→ Anmerkungen zum Formeleditor)
Wenn man einen Parameter aus der Zwischenablage einfügt (Strg-V), muss man nur die unterstrichenen Zeichen eintippen bzw. korrigieren.
→ die Ebene dreht sich (→ Abb.05a) - Die Formel (→ Abb.05b) in FreeCAD-Formeleditor-Schreibweise lautet:
Referenzmaße statt Formeln: Grafische Lösung für eine zentrierte Skizzenebene
Winkelfunktionen mag nicht jeder und umständlich einzugeben sind sie auch noch. Die frohe Botschaft ist, dass man sie oft und leicht durch grafische Lösungen ersetzen kann.
Der Trick ist, dass man zunächst die Skizze ganz normal erstellt, bis sie vollständig bestimmt ist. Danach fügt man zusätzlich noch → Referenzmaße ein für die Maße, die man sonst berechnen müsste - und schon erledigt FreeCAD die Rechnerei. Jetzt noch (Parameter-)Namen dazu, und die Bezugsebene - oder Skizzenebene - schwebt schon fast an ihrem Platz.
Zur Steigerung verwenden wir diesmal keine Bezugsebene, sondern ein Skizzenblatt [Sketch], dessen Koordinatensystem mittig auf der Schräge liegen soll. Neu ist, dass man Skizzenblätter nicht in einer Maske positionieren kann, sondern ihre Eigenschaften bemühen muss.
1. Referenzmaße setzen

Abb.06a Referenzmaße (blau)
yz-Ebene, Nullpunkt links unten
Um die Mitte der Schräge zu erhalten, kann man einen Skizzenpunkt mittig zwischen die Linienendpunkte setzen:
Skizzenblatt öffnen
Skizzenpunkt setzen
Symmetrisch anordnen (Linienendpunkte zu Mittelpunkt)
Referenzmaße mit (Parameter-)Namen ergänzen
Die (Parameter-)Namen sind wieder kurz:
- ea: Ebenenwinkel alpha
- ey: Ebenenabstand in y-Richtung (rechts)
- ez: Ebenenabstand in z-Richtung (oben)
2. Neue Skizze im Raum positionieren

Abb.06b Skizzeneigenschaften
und Skizzenebene auf der Schräge
Zunächst wird ein neues Skizzenblatt geöffnet und mit einem Kreis ausgestattet, denn leere Skizzenblätter kann man nicht sehen. Der Mittelpunkt des Kreises sollte auf den Nullpunkt des Skizzenblattes liegen, dann hat man sein Koordinatensystem im Blick.
Um Skizzenblätter im Raum zu positionieren, muss man ihre Eigenschaften [Sketch Property] bemühen, und das geht erst, wenn die Skizze wieder geschlossen ist.
Auch die neue Skizze wird auf der xy-Ebene abgestützt, damit man die Referenzmaße aus Abb.06a übernehmen kann.
Arbeitsbereich PartDesign
Neues Skizzenblatt auf die xy-Ebene
Kreis um den Nullpunkt skizzieren
Skizzenblatt verlassen [Leave Sketch]
- Baumansicht - Sketch (das neue Skizzenblatt markieren)
→ Eigenschaft der Skizze erscheint unter der Baumansicht (→ Abb.06b)- Eigenschaften - Attachment -
- Winkel: Sketch00x.Constraints.ea
- Achse X: 1
- Achse Y: 0
- Achse Z: 0
- Eigenschaften - Attachment -
- Position Y: Sketch00x.Constraints.ey
- Position Z: Sketch00x.Constraints.ez
- Eigenschaften - Attachment -
Parameter in Tabellen verwalten
Statt Parameter auf viele Skizzen zu verteilen kann man sie auch übersichtlich in einer Tabelle [Spreadsheet] auflisten. Die Möglichkeit dazu bietet der Arbeitsbereich Spreadsheet.
Wenn man Parameter in Tabellen verwaltet, reagiert die Bezugsebene (→ Abb.06a in rot) nicht mehr auf Änderungen des Klotzes (→ Abb.03 oder → Abb.06a in rot), sondern es reagieren beide auf Änderungen in der Tabelle. Deswegen genügt es nicht, nur die Parameter für die Bezugsebene in der Tabelle zu verwalten (→ Abb.06a in blau), es müssen auch die Parameter für den Klotz sein.
Einer Tabellenkalkulation liegt das Rechnen schon im Namen, deshalb werden wir die Parameter für die Bezugsebene zunächst berechnen. Zuletzt und alternativ werden wir grafisch ermittelte Referenzwerte aus der Skizze in die Tabelle zurück übertragen.
1. Tabelle anlegen

Abb.07a Tabelle öffnen
in drei Schritten
Zunächst muss man in den Arbeitsbereich Spreadsheet wechseln, ein Tabellenblatt [Spreadsheet] erstellen und öffnen.
Arbeitsbereich Spreadsheet
Kalkulationstabelle erstellen
- Baumansicht - Spreadsheet (Doppelklick)
oder
Grafikansicht - Reiter: Spreadsheet (Linksklick)
2. Parameter für den Klotz in der Tabelle erzeugen

Abb.08a Tabelle mit Maßen
Ein Tabellenblatt funktioniert in FreeCAD ähnlich wie in LO Calc oder MS Excel. Neu ist nur der Alias, so heißt ein Parametername im Arbeitsbereich Spreadsheet. Man kann die Parameter aber auch mit ihrer Zelladresse ansprechen.
In → Abb.08a befinden sich die Parameter in den gelb hinterlegten Zellen B2 bis B5, alle anderen Zellen sind Kosmetik. Die Details werden am Beispiel der Zelle B3 geschildert:
- Der Inhalt von B3 ist das Maß 20 (=Parameter).
- Der (Parameter-)Alias von B3 lautet Hoehe_Schraege
- Man muss wohl erst einen Inhalt eingeben und danach den Alias eintippen.
- Zellen mit Alias werden gelb hinterlegt.
- Bei der Übernahme von Parametern aus Tabellen sind längere Aliase von Vorteil (s.u.).
- Im Alias sind kaum Sonderzeichen erlaubt.
- Groß- und Kleinschreibung beachten
- In der Zelle links neben dem Parameter wiederhole ich den Alias zur besseren Übersicht.
- In die Zelle rechts neben dem Alias schreibe ich Bemerkungen.
3. Parameter berechnen in Tabellen: (Referenz-)Parameter für die Ebene
Tabellenkalkulationen [Spreadsheet] sind zum Rechnen geschaffen und die Formeln sind simpel, also los...
Wir berechnen die Mitte der Schräge und sollten die Ergebnisse wie in → Abb.06a erhalten. Der Aufbau der Tabelle entspricht dem vorigen Abschnitt und natürlich erhalten die Zellen je einen (Parameter-)Alias.
Beachten Sie...
- Die Eingaben in Zellen sollten sich in der Inhaltszeile abspielen (→ Abb.09a ganz oben). In den Zellen geht es zwar auch, aber dort gibt es keine Auswahl und man muss alles selbst tippen.
- In FreeCAD-Tabellen muss man Groß-/Klein-Schreibung beachten.
- Wenn man keine Einheiten angibt, verwendet FreeCAD mm [Millimeter] und sonst SI-Einheiten.
- Wenn man Einheiten eingibt, rechnet FreeCAD mit ihnen und das ist eigentlich eine tolle Sache, aber mit Mischformen kann FreeCAD nicht umgehen und das heißt: Wenn man einmal mm getippt hat, muss man es immer tun. In Physik gerne, in Konstruktionen eher nicht ;-)
3a. Formel in B8 mit (Parameter-)Alias

Abb.09a: Formel in B8
mit (Parameter-)Alias
Die y-Koordinate der Schrägenmitte entspricht der halben Breite der Schräge (→ Abb.06a).
Wir geben die Formel mit (Parameter-)Alias ein (→ Abb.09a):
- Zelle B8: (anklicken)
- Inhalt: (In die leere Inhaltszeile klicken)
- = (tippen)
In Tabellenkalkulationen ist ein Gleichheitszeichen das Signal dafür, dass eine Formel folgt - Bre... oder Sch... (eintippen)
→ Auswahl erscheint - Breite_Schraege (auswählen)
- /2 (geteilt durch 2 eintippen)
- ENTER
→ Das Ergebnis 15 erscheint in der Zelle - (Parameter-)Alias für B8: Ebene_y (nicht vergessen)
3b. Formel in B9 mit Zelladressen

Abb.09b: Formel in B9
mit Zelladressen
Die z-Koordinate der Schrägenmitte entspricht der Höhe des Randes plus der halben Höhe der Schräge (→ Abb.06a).
Diesmal geben wir die Formel mit Zelladressen ein (→ Abb.09b):
- Zelle B9, Inhaltszeile, =
- =B2 + B3 / 2 (eintippen)
- Ergebnis: 20
3c. Formel in B10 - Winkelfunktion

Abb.09c: Formel in B9
Zum Abschluss eine kleine Übung (→ Abb.09c). Hinweise zur Formel gibt es oben → Formeleditor.
4. Parameter aus der Tabelle in das Modell übertragen.
Und noch ein Mal bauen wir den Klotz auf:
4a. Parameter aus der Tabelle in die Skizze übertragen

Abb.10a: Querschnitt des Klotzes
mit Parametern aus der Tabelle
(yz-Ebene, Nullpunkt links unten)
PartDesign - Neues Skizzenblatt auf die yz-Ebene
Querschnitt des Klotzes skizzieren (→ Abb.10a)
Höhe 10 mm mit dem Parameter Hoehe_Rand aus der Tabelle [Spreadsheet] bemaßen
→ Maske Länge einfügen- Länge: = oder
→ Formeleditor wird geöffnet - Sp.... (eintippen)
→ es erscheint eine Auswahl - Spreadsheet (wählen - z.B. mit Pfeiltasten)
→ Spreadsheet. erscheint im Formeleditor - Spreadsheet.Hoe... oder Ran.. (weiter tippen)
→ es erscheint eine Auswahl - Hoehe_Rand (auswählen)
→ Spreadsheet.Hoehe_Rand steht im Formeleditor - OK
- Länge: = oder
- Name: ... (nicht nötig, weil wir den Parameter aus dem Spreadsheet holen
- Referenz: ... (trifft nicht zu)
- ... (weitere Parameter eingeben
4b. Parameter aus der Tabelle in Extrusionen & Co exportieren
Bei der Extrusion [Aufpolsterung, Pad] gibt man statt eines Maßes einfach Parameter ein.
4c. Parameter aus der Tabelle auf die Position einer Bezugsebene oder einer Skizzenebene übertragen
Auch die Positionierung einer Bezugsebene oder einer Skizzenebene funktioniert genauso wie oben, nur gibt man Parameter statt Maße ein.
4d. Testen der Versuchsanordnung

Abb.10b: Gesamtdarstellung
mit veränderter Randhöhe
Ordnen Sie die Fenster nebeneinander an und beobachten Sie die Veränderungen, wenn Sie in der Tabelle ein Maß ändern.
- Menüleiste - Fenster - Anordnen (und ein bisschen schieben)
- Bei größeren Konstruktionen kann die Reaktion auf Änderungen dauern...
5. Parameter aus dem Modell in Tabellen übertragen
Es wäre reizvoll, wenn man jetzt auch noch Referenzmaße aus Skizzen in eine Tabelle übertragen und sich auch hier die Rechnerei sparen könnte. Es funktioniert sogar, aber problemlos nur, wenn man zwei getrennte Tabellen für den Import und den Export von Parametern verwendet, also auf Kosten der Übersichtlichkeit. Schade!
Erfahrungen mit einer Tabelle → Fehlermeldung.
5a. Vorbereitungen
- Tabelle 1 mit Parametern für den Klotz anlegen (→ Abb.08a)
- Querschnitt des Klotzes mit den Parametern aus der Tabelle skizzieren (→ Abb.10a)
- Referenzmaße auf die Mitte der Schräge legen (→ Abb.06a)
- Tabelle 2 für die Referenzmaße vorbereiten (→ Abb.11a, ohne Formeln)
5b. Referenzmaße aus der Skizze in Tabelle 2 übertragen

Abb.11b: Sketch will Aktualisierung
- Baumansicht - ... - Sketch (anklicken, → Abb.11b)
→ unter der Baumansicht erscheinen die Eigenschaften von Sketch, von denen man einige in die Tabelle übertragen kann. - Zelle B12 (anklicken, → Abb.11a)
- Inhalt: (in die leere Zeile klicken)
- =sk... (eintippen, Sketch auswählen))
- =Sketch.co... (eintippen, Constraints auswählen))
- =Sketch.Constraints.ey (mit Punkt eintippen)
→ die vollständige Adresse ist in Abb.11b rot unterstrichen. - ENTER
→ das Referenzmaß wird in die Tabelle übernommen und kann zB. zur Positionierung einer Bezugsebene verwendet werden.
Auf diese Weise kann man auch andere Parameter in die Tabelle übertragen, z.B. die Länge einer Extrusion (Pad00x.Length)
Download: Klotz_Test.FCStd
Sonstige parametrische Methoden
Andere parametrische Methoden werden hier nicht behandelt:
Sketcher - Kante klonen [Linie kopieren, External
→ vermutlich topologisches BenennungsproblemSketcher - Skizzenblatt klonen [Pause, Carbon Copy]
→ vermutlich topologisches BenennungsproblemSketcher - Skizzenelemente klonen [Clone]
Extrusion [Aufpolstern, Tasche, Pad, Pocket]
Extrusionen des Typs bis zur Oberfläche→ vermutlich topologisches Benennungsproblem- usw.
Anmerkungen
Koordinatensystem von Ebenen
- Versatz ... in z-Richtung bedeutet nicht, dass die Ebene in die z-Richtung des Koordinatensystems (des Bodys) verschoben wird, sondern dass es senkrecht zur Stützebene verschoben wird (→ Abb.04a XY_Plane001). Vermute ich jedenfalls ...
- Wie das lokalen Koordinatensystems [local CS] funktioniert, habe ich noch nicht recherchiert. Einfach ausprobieren geht schneller ...
Formeleditor
- Der Formeleditor funktioniert ähnlich wie bei LO Calc und MS Excel, natürlich mit kleinerem Funktionsumfang und ein paar Ausnahmen:
- Das Gleichheitszeichen = wird zum Aufruf des Formeleditors benutzt, darf aber nicht in der Formel selbst stehen.
Dies gilt aber nicht für den Formeleditor im Arbeitsbereich Spreadschicht. Dort muss eine Formel mit einem Gleichheitszeichen beginnen. - Die Arcusfunktionen werden mit asin, atan usw. abgekürzt statt mit arcsin, arctan usw.
LO Calc kennt diese Schreibweise nicht und im FreeCAD-Wiki heißt das geeignete Suchwort nicht Formeleditor, sondern Ausdrücke. Stunden später ... - FreeCAD-Wiki: mathematische Ausdrücke bzw. Formeln.
Fehlermeldung
Wenn man eine Skizze mit Parametern aus einer Tabelle aufbaut, Referenzmaße ergänzt und die neuen Referenzparameter zurück in die gleiche Tabelle übertragen möchte, zeigt sich FreeCAD widerspenstig.
Download: Klotz_Test.FCStd
5b. (alternativ) Referenzmaße aus der Skizze in die Tabelle übertragen

Abb.11b: Sketch will Aktualisierung
- Zelle B12 (→ Abb.11a)
- =Sketch00x.Constraints.ey (eintippen)
- Sketch00x ist die Skizze, die die Referenzmaße enthält (in Abb.11a: Sketch).
- FreeCAD bietet beim Eintippen eine Auswahl an, in der nur die gesuchte Skizze fehlt.
→ das ist ein Hinweis, dass FreeCAD nicht mitspielen möchte
→ trotzdem: Eintippen!
- ENTER
→ das Referenzmaß wird übernommen
→ Baumdiagramm - ... - Sketch schreit nach Aktualisierung (→ Abb.11b) Aktualisieren [Std_Refresh]
→ Fehlermeldung: ...
5c. Referenzmaße aus der Tabelle heraus verwenden
Die Fehlermeldung ist für mich nicht zu lösen, aber ich will wenigstens wissen, ob es trotzdem funktioniert. Also wird wie geplant eine Skizzenebene auf die Schraege gelegt:
- Neue Skizzenebene auf die Schräge mit den Refenzmaßen aus der Tabelle verankern (→ Abb.06a)
Alles funktioniert wie geplant und die Testreihe zeigt auch keine Auffälligkeiten. Nur der Aktualisierungswunsch der Skizze bleibt bestehen, und ob man auf dieser Basis produktiv arbeiten soll, glaube ich nicht.
5d. Fehlermeldungen beim Aktualisieren

Abb.11c: Fehlermeldung: Abhängigkeitsfehler
Im Schritt 5b (alternativ) erscheint die Fehlermeldung (→ 11c):
Abhängigkeitsfehler
Das Dokument enthält Abhängigkeitszyklen.
Bitte überprüfen Sie die Berichtsansicht für weitere Details.
Möchten Sie trotzdem fortfahren?
5e. Meldung in der Berichtsansicht
Nach einer Berichtsansicht habe ich früher schon gesucht, deswegen weiß ich, dass die Berichtsansicht im Programm Ausgabefenster heißt ...
Die Meldung in der Berichtsansicht [Ausgabefenster, Report View] lautet:
Klotz#Sketch still touched after recompute
The graph must be a DAG
5f. Überlegungen dazu
Wenn man Suchmaschinen nach The graph must be a DAG befragt, findet man Infos und Werkzeuge, aber so genau will ist es gar nicht wissen.
- Das Programm überträgt die Referenzmaße wie gewünscht aus einer Skizze in eine Tabelle und lässt sie auch verarbeiten, bringt aber eine Fehlermeldung ins Spiel, die nicht mehr zu entfernen ist.
- Die Fehlermeldung spricht von Abhängigkeitszyklen (Zirkelschluss) innerhalb des Dokumentes, d.h. A hängt von B ab, und B hängt von A ab, was nicht eindeutig lösbar wäre.
- Richtig ist: Sketch holt Parameter aus dem Spreadsheet und Spreadsheet holt Parameter aus dem Sketch.
- Aber es sind nicht die gleichen Parameter, und praktisch funktioniert es ja zunächst.
- Einen logischen Grund für die Fehlermeldung sehe ich nicht, außer dass es vermutlich einfacher zu programmieren ist, ganze Dokumente gegen Abhängigkeitszyklen zu blockieren als einzelne Parameter zu überprüfen ...
- Folgende Versuche, FreeCAD durch Umwege zu überlisten, führten zur gleichen Fehlermeldung:
- Skizze des Querschnittes klonen [CarbonCopy] und die Referenzmaße im Klon erzeugen und von dort in die Tabelle übertragen.
- Referenzmaße von Tabelle 2 in Tabelle 1 übertragen
Links
- Video-Tutorien
- FreeCAD Tutorial 27 - FreeCAD - Spreadsheet Workbench vorgestellt - 2. Advent Spezial ! von flowwies corner (Stand 12/2021): gewohnt kompakt
- FreeCAD Tutorial 27 - Spreadsheet Workbench von BPLRFE (Stand 2016, Spreadsheet ab ca. 12:00. Erscheint mir insgesamt veraltet, geht aber ab ca. 16:00 ausführlich auf den Im- und Export von Parametern in die Tabelle ein.)