Expressions/de: Difference between revisions
(Updating to match new version of source page) |
(Updating to match new version of source page) |
||
(501 intermediate revisions by 9 users not shown) | |||
Line 1: | Line 1: | ||
<languages/> |
<languages/> |
||
{{TOCright}} |
|||
<span id="Overview"></span> |
|||
<div style="float:right; clean:both; margin-left:0.5em;">__TOC__</div> |
|||
==Übersicht== |
|||
Es ist möglich, Eigenschaften unter Verwendung von mathematischen Ausdrücken festzulegen. In der GUI enthalten Drehfelder oder Eingabefelder, die an Eigenschaften gebunden sind, ein blaues Symbol [[Image:Bound-expression.svg|24px]]. Klicken auf das Symbol oder Eingeben des Gleichheitszeichens {{KEY|=}} ruft den Ausdruckseditor für diese bestimmte Eigenschaft auf. |
|||
{{Version/de|0.16}} |
|||
Ein FreeCAD-Ausdruck ist ein mathematischer Ausdruck, der die mathematischen Standard- [[#Unterstützte_Operatoren|Operatoren]], [[#Unterstützte_Funktionen|Funktionen]] und [[#Unterstützte_Konstanten|vorgegebene Konstanten]] verwendet, wie unten beschrieben. Zusätzlich können Ausdrücke auf Objekteigenschaften referenzieren und auch [[#Bedingte_Ausdrücke|Bedingte Ausdrücke]] verwenden. Zahlen in Ausdrücken können optionale [[#Einheiten|Einheiten]] angefügt werden. |
|||
Seit der Version 0.16 ist es möglich, Modelleigenschaften durch Rechenformeln festzulegen und mit anderen Eigenschaften von der Benutzeroberfläche aus zu verknüpfen. Eingabefelder von Eigenschaften für Zahlen oder Größenangaben enthalten einen blauen Knopf [[Image:Sketcher_Expressions.png|24px]]. Wenn man auf dieses Symbol klickt oder das Gleichheitszeichen (=) eingibt, öffnet sich der Formeleditor für die entsprechende Eigenschaft. |
|||
Zahlen können entweder ein Komma {{incode|,}} oder einen Dezimalpunkt {{incode|.}} zur Trennung von Ganzzahlen und Nachkommastellen verwenden. Wenn ein Dezimaltrennzeichen benutzt wird, ''muss'' danach mindestens eine Ziffer folgen. |
|||
<div class="mw-translate-fuzzy"> |
|||
Daher sind die Ausdrücke {{incode|1.+2.}} und {{incode|1,+2,}} ungültig, aber {{incode|1.0 + 2.0}} und {{incode|1,0 + 2,0}} sind gültig. |
|||
Ein Rechenausdruck in FreeCAD ist ein mathematischer Ausdruck in der üblichen Schreibweise für die Standardrechenarten (+, -, * und /) und mathematische Funktionen (siehe unten). Zusätzlich können referenzierte Eigenschaften anderer Objekte und bedingte Ausdrücke verwendet werden. Zahlen in Rechenausdrücken können mit einer optionalen Einheit versehen sein. |
|||
</div> |
|||
Operatoren und Funktionen beachten die Einheiten und erfordern gültige Kombinationen von Einheiten, falls verfügbar. Zum Beispiel ist {{incode|2mm + 4mm}} ein gültiger Ausdruck, während {{incode|2mm + 4}} kein gültiger Ausdruck ist. |
|||
Numbers may use either a comma ',' or a decimal point '.' separating whole digits from decimals. |
|||
Dies gilt auch für Referenzen auf Objekteigenschaften, die Einheiten beinhalten, wie z.B. Längeneigenschaften. Daher ist {{incode|Pad001.Length + 1}} ungültig, da es einer Eigenschaft mit Längeneinheit nur eine Zahl ohne Einheit hinzufügt; gültig wäre {{incode|Pad001.Length + 1mm}}. |
|||
When the decimal marker is used, it ''must'' be followed by at least one digit. |
|||
Thus, the expressions '''1.+2.''' and '''1,+2,''' are invalid, but '''1.0+2.0''' and '''1,0+2,0''' are valid. |
|||
Einige Fehler im Zusammenhang mit Einheiten können unverständlich erscheinen, wenn Ausdrücke abgelehnt werden oder die Ergebnisse nicht den Einheiten der bearbeiteten Eigenschaft entsprechen. Ein paar Beispiele: |
|||
The constants ''pi'' and ''e'' are predefined, and must be written in lowercase. |
|||
{{incode|1/2mm}} wird nicht als halber Millimeter angesehen sondern als {{incode|1/(2mm)}} und ergibt: {{incode|0.5 mm^-1}}. |
|||
Die Rechenarten und Funktionen verstehen sich auf Einheiten und erfordern deshalb bei der Verwendung von Einheiten zulässige Einheitenkombinationen. 2mm+4mm ist zum Beispiel ein zulässiger Rechenausdruck, während 2mm+4 nicht zulässig ist. (Der Grund dafür ist, das ein Ausdruck wie 1in + 4 von Menschen wohl als 1in + 4in interpretiert wird, das System dies jedoch nicht erraten kann, da alle Einheiten intern in das SI-System konvertiert werden.) |
|||
{{incode|sqrt(2)mm}} ist ungültig, da der Funktionsaufruf keine Zahl ist. Dies muss so eingegeben werden: {{incode|sqrt(2) * 1mm}}. |
|||
You can refer to an object by its {{incode|Name}} or by its {{incode|Label}}. In the case of a {{incode|Label}}, it must be enclosed in double {{incode|<<}} and {{incode|>>}} symbols, such as {{incode|<<Label>>}}. |
|||
<span id="Function_arguments"></span> |
|||
Then you can reference any numerical property of this object. For example, to refer to a Cylinder's height, you may use {{incode|Cylinder.Height}} or {{incode|<<Long_name_of_cylinder>>.Height}}. |
|||
===Funktionsargumente=== |
|||
Mehrere Argumente zu einer Funktion können entweder durch ein Semikolon {{incode|;}} oder ein Komma <em> gefolgt von einem Leerzeichen</em> {{incode|,}} getrennt werden. Im letzteren Fall wird das Komma nach der Eingabe in ein Semikolon umgewandelt. Wenn ein Semikolon verwendet wird, ist kein Leerzeichen am Ende des Semikolons erforderlich. |
|||
== Supported Operators == |
|||
Die Argumente können Verweise auf Zellen in einer Kalkulationstabelle enthalten. Ein Zellverweis besteht aus dem großen Zeilenbuchstaben der Zelle, gefolgt von ihrer Spaltennummer, zum Beispiel {{incode|A1}}. Eine Zelle kann auch durch den Alias der Zelle referenziert werden, zum Beispiel {{incode|Tabellenblatt.MeineTeilbreite}}. |
|||
The following operators are supported: |
|||
{| class="wikitable float-right mw-collapsible mw-uncollapsed" |
|||
<span id="Referencing_objects"></span> |
|||
!style="width: 33%;"|Operator |
|||
===Referenzierende Objekte=== |
|||
!style="width: 66%;"|Description |
|||
|- |
|||
Wie oben schon gezeigt, kann ein Objekt über seinen {{PropertyData/de|Namen}} referenziert werden. Es kann aber auch seine {{PropertyData/de|Benennung}} (Label) verwendet werden. Im Falle einer {{PropertyData/de|Benennung}} muss sie in doppelten {{incode|<<}} und {{incode|>>}} Symbolen eingeschlossen sein, wie z.B. {{incode|<<Benennung>>}}. |
|||
| + |
|||
| [https://en.wikipedia.org/wiki/Addition Addition] |
|||
Jede Eigenschaft eines Objekts kann referenziert werden. Um sich beispielsweise auf die Höhe eines Zylinders zu beziehen, kann {{incode|Zylinder.Height}} oder {{incode|<<Benennung_des_Zylinders>>.Height}} verwendet werden. |
|||
Für weitere Informationen über das Referenzieren von Objekten siehe [[#Auf_CAD-Daten_referenzieren|Auf CAD-Daten referenzieren]]. |
|||
{{Top}} |
|||
<span id="Supported_constants"></span> |
|||
==Unterstützte Konstanten== |
|||
Die folgenden Konstanten werden unterstützt: |
|||
{| class="wikitable" |
|||
!style="width: 33%;"|Konstante |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|- |
||
| style="text-align:center;" | '''e''' |
|||
| - |
|||
| [https:// |
| [https://de.wikipedia.org/wiki/Eulersche_Zahl Eulersche Zahl] |
||
|- |
|- |
||
| style="text-align:center;" | '''pi''' |
|||
| * |
|||
| [https:// |
| [https://de.wikipedia.org/wiki/Kreiszahl Kreiszahl <math>\pi</math>] |
||
|- |
|||
| / |
|||
| [https://en.wikipedia.org/wiki/Division_(mathematics) Division] |
|||
|- |
|||
| ^ |
|||
| [https://en.wikipedia.org/wiki/Exponentiation Exponentiation] |
|||
|} |
|} |
||
{{Top}} |
|||
<span id="Supported_operators"></span> |
|||
== Unterstützte Operatoren == |
|||
Die folgenden Operatoren werden untertstützt: |
|||
<div class="mw-translate-fuzzy"> |
|||
Mehrere Argumente einer Funktion können entweder durch Semikolon (';') oder ein Komma <em>gefolgt von einem Leerzeichen</em> getrennt werden. |
|||
Im letzteren Fall wird das Komma nach der Eingabe in ein Semikolon konvertiert. |
|||
Wenn ein Semikolon verwendet wurde, ist kein nachfolgendes Leerzeichen erforderlich. |
|||
</div> |
|||
{| class="wikitable" |
|||
The following constants are supported: |
|||
!style="width: 33%;"|Operator |
|||
{| class="wikitable float-right mw-collapsible mw-uncollapsed" |
|||
!style="width: |
!style="width: 66%;"|Beschreibung |
||
|- |
|||
!style="width: 66%;"|Description |
|||
| style="text-align:center;" |'''+''' |
|||
| [https://de.wikipedia.org/wiki/Addition Addition] |
|||
|- |
|||
| style="text-align:center;" |'''-''' |
|||
| [https://de.wikipedia.org/wiki/Subtraktion Subtraktion] |
|||
|- |
|||
| style="text-align:center;" | '''*''' |
|||
| [https://de.wikipedia.org/wiki/Multiplikation Multiplikation] |
|||
|- |
|||
| style="text-align:center;" | '''/''' |
|||
| Fließkomma [https://de.wikipedia.org/wiki/Division_(Mathematik) Division] |
|||
|- |
|- |
||
| style="text-align:center;" | '''%''' |
|||
| e |
|||
| [https:// |
| [https://de.wikipedia.org/wiki/Division_mit_Rest Division mit Rest] |
||
|- |
|- |
||
| style="text-align:center;" | '''^''' |
|||
| pi |
|||
| [https:// |
| [https://de.wikipedia.org/wiki/Potenz_(Mathematik) Potenz] |
||
|} |
|} |
||
{{Top}} |
|||
<span id="Supported_functions"></span> |
|||
== Unterstützte Funktionen == |
== Unterstützte Funktionen == |
||
<span id="General_mathematical_functions"></span> |
|||
=== General Mathematical Functions === |
|||
=== Allgemeine mathematische Funktionen === |
|||
Die |
Die folgenden mathematischen Funktionen werden untertstützt: |
||
<span id="Trigonometric_functions"></span> |
|||
Multiple arguments to a function may be separated by either a semicolon ';' or a comma <em>followed by a space</em> ', '. In the latter case, the comma is converted to a semicolon after entry. When a semicolon is used, no trailing space is necessary. |
|||
==== Trigonometrische Funktionen ==== |
|||
[https://de.wikipedia.org/wiki/Trigonometrische_Funktion Trigonometrische Funktionen] verwenden Grad als Standardeinheit. Für die Angabe im Bogenmaß wird {{incode|rad}} nach dem <em>ersten</em> Wert in einem Ausdruck hinzugefügt. So ist z.B. {{incode|cos(45)}} das gleiche, wie {{incode|cos(pi rad / 4)}}. Ausdrücke in Grad können entweder {{incode|deg}} oder {{incode|°}} verwenden, z.B. {{incode|360deg - atan2(3; 4)}} oder {{incode|360° - atan2(3; 4)}}. Ein Ausdruck, der ohne Einheiten angegeben ist und aus Kompatibilitätsgründen in Grad oder Bogenmaß umgewandelt werden muss, wird entsprechend mit {{incode|1deg}}, {{incode|1°}} oder {{incode|1rad}} multipliziert, z.B. {{incode|(360 - X) * 1deg}}; {{incode|(360 - X) * 1°}}; {{incode|(0.5 + pi / 2) * 1rad}}. |
|||
[https://en.wikipedia.org/wiki/Trigonometric_functions Trigonometric functions] use degree as their default unit. For radian measure, add '''rad''' following the <em>first</em> value in an expression. So e.g. '''cos(45)''' is the same as '''cos(pi rad / 4)'''.<br/> |
|||
These trigonometric functions are supported: |
|||
{| class="wikitable float-right mw-collapsible mw-collapsed" |
|||
{| class="wikitable" |
|||
!style="width: 33%;"|Function |
|||
!style="width: |
!style="width: 15%;"|Funktion |
||
!style="width: |
!style="width: 55%;"|Beschreibung |
||
!style="width: 30%;"|Eingabebereich |
|||
|- |
|- |
||
| acos(x) |
| {{incode|acos(x)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Arkusfunktion#Beziehungen_zwischen_den_Funktionen arccos] |
||
| -1 <= x <= 1 |
| -1 <= x <= 1 |
||
|- |
|- |
||
| asin(x) |
| {{incode|asin(x)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Arkusfunktion#Beziehungen_zwischen_den_Funktionen arcsin] |
||
| -1 <= x <= 1 |
| -1 <= x <= 1 |
||
|- |
|- |
||
| atan(x) |
| {{incode|atan(x)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Arkusfunktion#Beziehungen_zwischen_den_Funktionen arctan], Bereich des Rückgabewertes: -90° < Wert < 90° |
||
| |
| alle |
||
|- |
|- |
||
| atan2( |
| {{incode|atan2(y; x)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Arctan2#Implementierungen arctan2] von ''y/x'' unter Berücksichtigung des Quadranten, Bereich des Rückgabewertes: -180° < Wert <= 180° |
||
| alle, die ungültige Eingabe x = y = 0 gibt 0 zurück |
|||
| all, except y = 0 |
|||
|- |
|- |
||
| cos(x) |
| {{incode|cos(x)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Trigonometrische_Funktion#Definition cos] |
||
| |
| alle |
||
|- |
|- |
||
| cosh(x) |
| {{incode|cosh(x)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Hyperbelfunktion#Definition cosh] |
||
| |
| alle |
||
|- |
|- |
||
| sin(x) |
| {{incode|sin(x)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Trigonometrische_Funktion#Definition sin] |
||
| |
| alle |
||
|- |
|- |
||
| sinh(x) |
| {{incode|sinh(x)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Hyperbelfunktion#Definition sinh] |
||
| |
| alle |
||
|- |
|- |
||
| tan(x) |
| {{incode|tan(x)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Trigonometrische_Funktion#Definition tan] |
||
| |
| alle, außer x = n*90 mit n = odd integer (ungerade Ganzzahl) |
||
|- |
|- |
||
| tanh(x) |
| {{incode|tanh(x)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Hyperbelfunktion#Definition tanh] |
||
| |
| alle |
||
|- |
|||
| {{incode|hypot(x; y)}} |
|||
| [https://de.wikipedia.org/wiki/Pythagoreische_Addition Pythagoreische Addition] ('''Hypot'''enuse), z.B. hypot(4; 3) = 5. |
|||
| x und y >= 0 |
|||
|- |
|||
| {{incode|cath(x; y)}} |
|||
| Die gegebene Hypotenuse und eine Seite ergibt die andere Seite eines Dreiecks (Kathete), z.B. cath(5; 3) = 4. |
|||
| x >= y >= 0 |
|||
|} |
|} |
||
<span id="Exponential_and_logarithmic_functions"></span> |
|||
These functions for exponentiation and logarithmization are supported: |
|||
==== Exponential- und Logarithmusfunktionen ==== |
|||
{| class="wikitable float-right mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Function |
|||
{| class="wikitable" |
|||
!style="width: 33%;"|Description |
|||
!style="width: 33%;"| |
!style="width: 33%;"|Funktion |
||
!style="width: 33%;"|Beschreibung |
|||
!style="width: 33%;"|Eingabebereich |
|||
|- |
|- |
||
| exp(x) |
| exp(x) |
||
| [https://en.wikipedia.org/wiki/Exponential_function# |
| [https://en.wikipedia.org/wiki/Exponential_function#Definition Exponentialfunktion] |
||
| |
| alle |
||
|- |
|- |
||
| log(x) |
| log(x) |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Logarithmus#Nat%C3%BCrlicher_Logarithmus Natürlicher Logarithmus] |
||
| x > 0 |
| x > 0 |
||
|- |
|- |
||
| log10(x) |
| log10(x) |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Dekadischer_Logarithmus Dekadischer Logarithmus] |
||
| x > 0 |
| x > 0 |
||
|- |
|- |
||
| pow(x, y) |
| pow(x, y) |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Potenz_(Mathematik) Potenz (Mathematik)] |
||
| |
| alle |
||
|- |
|- |
||
| sqrt(x) |
| sqrt(x) |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Quadratwurzel Quadratwurzel] |
||
| x >= 0 |
|||
|- |
|||
| cbrt(x) {{Version/de|0.21}} |
|||
| [https://de.wikipedia.org/wiki/Wurzel_(Mathematik)#Quadrat-_und_Kubikwurzel Kubikwurzel] |
|||
| x >= 0 |
| x >= 0 |
||
|} |
|} |
||
<span id="Rounding,_truncation_and_remainder_functions"></span> |
|||
These functions for rounding, truncation and remainder are supported: |
|||
==== Rundung, Trunkierung und Modulo ==== |
|||
{| class="wikitable float-right mw-collapsible mw-collapsed" |
|||
!style="width: 20%;"|Function |
|||
{| class="wikitable" |
|||
!style="width: 55%;"|Description |
|||
!style="width: |
!style="width: 20%;"|Funktion |
||
!style="width: 55%;"|Beschreibung |
|||
!style="width: 25%;"|Eingabebereich |
|||
|- |
|- |
||
| abs(x) |
| {{incode|abs(x)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Betragsfunktion Betragsfunktion] |
||
| |
| alle |
||
|- |
|- |
||
| ceil(x) |
| {{incode|ceil(x)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Abrundungsfunktion_und_Aufrundungsfunktion Aufrundungsfunktion], kleinster ganzzahliger Wert größer oder gleich x |
||
| |
| alle |
||
|- |
|- |
||
| floor(x) |
| {{incode|floor(x)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Abrundungsfunktion_und_Aufrundungsfunktion Abrundungsfunktion], größter ganzzahliger Wert kleiner oder gleich x |
||
| |
| alle |
||
|- |
|- |
||
| mod(x, y) |
| {{incode|mod(x, y)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Division_mit_Rest Division mit Rest] nach einer Division ''x'' durch ''y'', das Vorzeichen des Ergebnisses ist das des Dividenden. |
||
| |
| alle, außer y = 0 |
||
|- |
|- |
||
| round(x) |
| {{incode|round(x)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Rundung Rundung] auf die nächste Ganzzahl |
||
| |
| alle |
||
|- |
|- |
||
| trunc(x) |
| {{incode|trunc(x)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Trunkierung_(Mathematik) Trunkierung] auf die nächste Ganzzahl in Richtung Null (Nachkommastellen entfernen). |
||
| |
| alle |
||
|} |
|} |
||
{{Top}} |
|||
<span id="Statistical_/_aggregate_functions"></span> |
|||
=== Statistische / Aggregatfunktionen === |
|||
[https://de.wikipedia.org/wiki/Aggregatfunktion Aggregatfunktion] verwenden ein oder mehrere Argumente.<br> |
|||
<div class="mw-translate-fuzzy"> |
|||
Die Konstanten ''pi'' und ''e'' sind vordefiniert. |
|||
</div> |
|||
Einzelne Argumente für Aggregatfunktionen können aus Zellbereichen bestehen. Ein Zellbereich wird durch zwei Zellbezüge ausgedrückt, die durch einen Doppelpunkt {{Incode|:}} getrennt sind, zum Beispiel {{Incode|Durchschnitt(B1:B8)}} oder {{Incode|Summe(A1:A4; B1:B4)}}. |
|||
These aggregate functions are supported: |
|||
Die Zellbezüge können auch Zell Aliase verwenden, zum Beispiel {{Incode|Durchschnitt(StartTemp:EndTemp)}}. |
|||
{| class="wikitable float-right mw-collapsible mw-collapsed" |
|||
!style="width: 20%;"|Function |
|||
Diese Aggregatfunktionen werden unterstützt: |
|||
!style="width: 55%;"|Description |
|||
!style="width: 25%;"|Value range |
|||
{| class="wikitable" |
|||
!style="width: 20%;"|Funktion |
|||
!style="width: 55%;"|Beschreibung |
|||
!style="width: 25%;"|Eingabebereich |
|||
|- |
|- |
||
| average( |
| {{incode|average(a; b; c; ...)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Arithmetisches_Mittel Arithmetisches Mittel] der Werte der Argumente, dasselbe, wie sum(a; b; c; ...) / count(a; b; c; ...) |
||
| |
| alle |
||
|- |
|- |
||
| count( |
| {{incode|count(a; b; c; ...)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Z%C3%A4hlen Zählen] der Argumente, üblicherweise für Zellbereiche genutzt |
||
| |
| alle |
||
|- |
|- |
||
| max( |
| {{incode|max(a; b; c; ...)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Extremwert Extremwert (Maximum)]-Werte der Argumente |
||
| |
| alle |
||
|- |
|- |
||
| min( |
| {{incode|min(a; b; c; ...)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Extremwert Minimum (Minimum)]-Werten der Argumente |
||
| |
| alle |
||
|- |
|- |
||
| stddev( |
| {{incode|stddev(a; b; c; ...)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Varianz_(Stochastik) Varianz (Stochastik)] der Werte der Argumente |
||
| |
| alle |
||
|- |
|- |
||
| sum( |
| {{incode|sum(a; b; c; ...)}} |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Summe Summe] der Werte der Argumente, üblicherweise für Zellbereiche genutzt |
||
| |
| alle |
||
|} |
|} |
||
{{Top}} |
|||
<span id="String_manipulation"></span> |
|||
=== Zeichenkettenhandhabung === |
|||
<span id="String_identification"></span> |
|||
== Conditional Expressions == |
|||
==== Zeichenkettenerkennung ==== |
|||
Zeichenketten werden in Ausdrücken erkannt, indem sie in doppelte öffnende/schließende Winkel eingeschlossen werden (so wie Beschriftungen). |
|||
<div class="mw-translate-fuzzy"> |
|||
Bedingte Ausdrücke haben die Form ''Bedingung ? ResultatTrue : ResultatFalse'' |
|||
</div> |
|||
Im folgenden Beispiel wird "TEXT" als eine Zeichenkette erkannt: {{Incode|<<TEXT>>}} |
|||
The following [https://en.wikipedia.org/wiki/Relational_operator#Standard_relational_operators relational operators] are defined: |
|||
{| class="wikitable float-right mw-collapsible mw-uncollapsed" |
|||
<span id="String_concatenation"></span> |
|||
!style="width: 33%;"|Unit |
|||
==== Zeichenkettenverkettung ==== |
|||
!style="width: 66%;"|Description |
|||
Zeichenketten können durch das '+'-Zeichen aneinandergehängt werden. |
|||
Das folgende Beispiel {{Incode|<<MY>>+<<TEXT>>}} wird verbunden zu "MYTEXT". |
|||
<span id="String_conversion"></span> |
|||
====Umwandlung in Zeichenketten ==== |
|||
Numerische Werte können mit der Funktion {{incode|str}} in Zeichenketten gewandelt werden: |
|||
{{incode|str(Box.Length.Value)}} |
|||
<span id="String_formatting"></span> |
|||
==== Zeichenkettenformatierung ==== |
|||
Zeichenkettenformatierung wird unterstützt durch die (alte) %-Form von Python. |
|||
Alle %-Spezifizierer wie in der (engl.) [https://docs.python.org/3/library/stdtypes.html#printf-style-string-formatting Python documentation] definiert. |
|||
Hat man bspw. einen mit den Vorgabewerten erstellten Würfel namens 'Box' (FreeCAD-Standardbezeichnung) mit 10mm-Kantenlänge, wird der folgende Ausdruck {{incode|<<Würfellänge: %s>> % Box.Length}} erweitert zu "Würfellänge: 10.0 mm" |
|||
Für mehr als einen %-Spezifizierer verwendet man folgende Syntax: {{incode|<<Würfellänge ist %s und Würfelbreite ist %s>> % tuple(Box.Length; Box.Width)}}. Oder man verwendet die Verkettung: {{Incode|<<Würfellänge ist %s>> % Box.Length + << und Länge ist %s>> % Box.Width}}. Beide ergeben zusammen "Würfellänge ist 10.0 mm und Breite ist 10.0 mm". |
|||
Eine FreeCAD-Beispieldatei, die Zeichenkettenformatierung zeigt, ist unter [https://forum.freecadweb.org/viewtopic.php?f=8&t=58657 im Forum] verfügbar (engl.) |
|||
{{Top}} |
|||
<span id="Object_creation_functions"></span> |
|||
===Funktionen zur Objekterstellung=== |
|||
Die folgenden Objekte können in Ausdrücken durch die folgenden Funktionen erstellt werden: |
|||
{| class="wikitable" |
|||
! Type |
|||
! Function |
|||
! Description |
|||
|- |
|- |
||
| {{incode|Tuple}} |
|||
| == |
|||
| {{incode|tuple(a; b; ...)}} |
|||
| equal to |
|||
| Example: {{incode|tuple(2; 1; 2)}} |
|||
|- |
|- |
||
| {{incode|List}} |
|||
| != |
|||
| {{incode|list(a; b; ...)}} |
|||
| not equal to |
|||
| Example: {{incode|list(2; 1; 2)}} |
|||
|- |
|||
| rowspan="2" | [[Vector API|{{incode|Vector}}]] |
|||
| {{incode|vector(x; y; z)}} |
|||
| rowspan="2" | Create a vector using three unit-less or {{incode|Length}} unit values. |
|||
Example: {{incode|vector(2; 1; 3)}} |
|||
|- |
|||
| {{incode|create(<<vector>>; x; y; z)}} |
|||
|- |
|||
| rowspan="2" | [[Matrix API|{{incode|Matrix}}]] |
|||
| |
|||
matrix( |
|||
a<sub>11</sub>; a<sub>12</sub>; a<sub>13</sub>; a<sub>14</sub>; |
|||
a<sub>21</sub>; a<sub>22</sub>; a<sub>23</sub>; a<sub>24</sub>; |
|||
a<sub>31</sub>; a<sub>32</sub>; a<sub>33</sub>; a<sub>34</sub>; |
|||
a<sub>41</sub>; a<sub>42</sub>; a<sub>43</sub>; a<sub>44</sub> |
|||
) |
|||
| rowspan="2" | Create a 4x4 matrix in [https://en.wikipedia.org/wiki/Row-_and_column-major_order row-major order]: |
|||
<math> |
|||
\begin{bmatrix} |
|||
a_{11} & a_{12} & a_{13} & a_{14} \\ |
|||
a_{21} & a_{22} & a_{23} & a_{24} \\ |
|||
a_{31} & a_{32} & a_{33} & a_{34} \\ |
|||
a_{41} & a_{42} & a_{43} & a_{44} \\ |
|||
\end{bmatrix} |
|||
</math> |
|||
A minimum of 1 argument can be supplied such as {{incode|matrix(1)}} which creates an identity matrix. |
|||
Example: {{incode|matrix(1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16)}} |
|||
|- |
|||
| {{incode|create(<<matrix>>; a<sub>11</sub>; a<sub>12</sub>; ...; a<sub>44</sub>)}} |
|||
|- |
|||
| rowspan="4" | {{incode|Rotation}} |
|||
| {{incode|rotation(axis; angle)}} |
|||
| rowspan="4" | Create a {{incode|Rotation}} by specifying its {{incode|axis}} ({{incode|Vector}}) and {{incode|angle}} ({{incode|Angle}} unit or unit-less), or three Euler angles {{incode|α}}, {{incode|β}}, {{incode|γ}}. |
|||
Examples: |
|||
* {{incode|rotation(vector(0; 1; 0); 45)}} |
|||
* {{incode|create(<<rotation>>; 30; 30; 30)}} |
|||
|- |
|||
| {{incode|rotation(α; β; γ)}} |
|||
|- |
|||
| {{incode|create(<<rotation>>; axis; angle)}} |
|||
|- |
|||
| {{incode|create(<<rotation>>; α; β; γ)}} |
|||
|- |
|||
| rowspan="5" | [[Placement_API|{{incode|Placement}}]] |
|||
| {{incode|placement(base; rotation)}} |
|||
| rowspan="5" | Create a {{incode|Placement}} with various parameters, including: |
|||
* {{incode|base}}: base location ({{incode|Vector}}) |
|||
* {{incode|center}}: center location ({{incode|Vector}}) |
|||
* {{incode|rotation}}: {{incode|Rotation}} |
|||
* {{incode|axis}}: Rotation axis ({{incode|Vector}}) |
|||
* {{incode|angle}}: Rotation angle (unit-less or {{incode|Angle}} unit value) |
|||
* {{incode|matrix}}: {{incode|Matrix}} |
|||
Examples: |
|||
* {{incode|placement(vector(2; 1; 3); rotation(vector(0; 0; 1); 45))}} |
|||
* {{incode|create(<<placement>>; create(<<vector>>; 2; 1; 2); create(<<rotation>>; create(<<vector>>; 0; 1; 0); 45))}} |
|||
|- |
|- |
||
| {{incode|placement(base; rotation; center)}} |
|||
| > |
|||
| greater than |
|||
|- |
|- |
||
| {{incode|placement(base; axis; angle)}} |
|||
| < |
|||
| less than |
|||
|- |
|- |
||
| {{incode|placement(matrix)}} |
|||
| >= |
|||
| greater than or equal to |
|||
|- |
|- |
||
| {{incode|create(<<placement>>; ...)}} |
|||
| <= |
|||
| less than or equal to |
|||
|} |
|} |
||
{{Top}} |
|||
<span id="Vector_functions"></span> |
|||
===Vektorfunktionen=== |
|||
Functions: {{Version|1.0}}. |
|||
<div class="mw-translate-fuzzy"> |
|||
Die Bedingung muss ein Ausdruck sein, der entweder 0 ({{FALSE}}) oder ungleich 0 ({{TRUE}}) ergibt. Die folgenden Vergleichsoperatoren stehen zur Verfügung: ==, !=, >, <, >= und <=. |
|||
</div> |
|||
{| class="wikitable" |
|||
Units can directly be used in expressions. The parser connects them to the previous value. So ''''2mm'''' or ''''2 mm'''' is valid while '''' mm'''' is invalid because there is no preceding value. |
|||
! Function / Operator |
|||
! Description |
|||
|- |
|||
| {{incode|v1 + v2}} |
|||
| Add two vectors. |
|||
|- |
|||
| {{incode|v1 - v2}} |
|||
| Subtract two vectors. |
|||
|- |
|||
| {{incode|v * s}} |
|||
| Uniformly scale a vector by {{incode|s}}. |
|||
|- |
|||
| {{incode|vangle(v1; v2)}} |
|||
| Angle between two vectors in degrees. |
|||
|- |
|||
| {{incode|vcross(v1; v2)}} |
|||
| Cross product of two vectors <math>v_1 \times v_2</math>. |
|||
|- |
|||
| {{incode|v1 * v2}} |
|||
| rowspan="2" | Dot product of two vectors <math>v_1 \cdot v_2</math>. |
|||
|- |
|||
| {{incode|vdot(v1; v2)}} |
|||
|- |
|||
| {{incode|vlinedist(v1; v2; v3)}} |
|||
| Distance between vector {{incode|v1}} and a line through {{incode|v2}} in direction {{incode|v3}}. |
|||
|- |
|||
| {{incode|vlinesegdist(v1; v2; v3)}} |
|||
| Distance between vector {{incode|v1}} and the closest point on a line segment from {{incode|v2}} to {{incode|v3}}. |
|||
|- |
|||
| {{incode|vlineproj(v1; v2; v3)}} |
|||
| Project vector {{incode|v1}} on a line through {{incode|v2}} in direction {{incode|v3}}. |
|||
|- |
|||
| {{incode|vnormalize(v)}} |
|||
| Normalize a vector to a unit vector. |
|||
|- |
|||
| {{incode|vplanedist(v1)}} |
|||
| Distance between vector {{incode|v1}} and a plane defined by a point {{incode|v2}} and a normal {{incode|v3}}. |
|||
|- |
|||
| {{incode|vplaneproj(v1)}} |
|||
| Project vector {{incode|v1}} on a plane defined by a point {{incode|v2}} and a normal {{incode|v3}}. |
|||
|- |
|||
| {{incode|vscale(v; sx; sy; sz)}} |
|||
| rowspan="4" | Non-uniformly scale a vector by {{incode|sx}} in the X direction, {{incode|sy}} in the Y direction, and {{incode|sz}} in the Z direction. |
|||
|- |
|||
| {{incode|vscalex(v; sx)}} |
|||
|- |
|||
| {{incode|vscaley(v; sy)}} |
|||
|- |
|||
| {{incode|vscalez(v; sz)}} |
|||
|} |
|||
{{Top}} |
|||
<span id="Matrix_functions"></span> |
|||
===Matrixfunktionen=== |
|||
{{incode|Rotation}} and {{incode|Placement}} can each be represented by a {{incode|Matrix}}. The following functions all take in a {{incode|Matrix}}, {{incode|Rotation}}, or {{incode|Placement}} as their first parameter denoted in the table below by {{incode|m}}. The type of the returned object is the same as the object supplied in the first argument except when using {{incode|mtranslate}} on a {{incode|Rotation}}, in which case a {{incode|Placement}} will be returned. |
|||
All values must have a unit. Therefore you must in general use a unit for values in spreadsheets.<br/> |
|||
In some cases it works even without a unit, for example if you have e.g. in spreadsheet cell B1 just the number ''1.5'' and refer to it for a pad height. This only works because the pad height predefines the unit ''mm'' that is used if no unit is given. It will nevertheless fail if you use for the pad height e.g. '''Sketch1.Constraints.Width - Spreadsheet.B1''' because ''Sketch1.Constraints.Width'' has a unit and ''Spreadsheet.B1'' has not. |
|||
{| class="wikitable" |
|||
Units with exponents can directly be entered. So e.g. '''mm^3''' will be recognized as mm³ and '''m^3''' will be recognized as m³. |
|||
! Function |
|||
! Description |
|||
|- |
|||
| {{incode|minvert(m)}} |
|||
| Calculate the [https://en.wikipedia.org/wiki/Invertible_matrix Inverse matrix]. |
|||
|- |
|||
| {{incode|mrotate(m; rotation)}} |
|||
| rowspan="3" | [https://en.wikipedia.org/wiki/Transformation_matrix#Rotation_2 Rotate] by either: |
|||
* a {{incode|Rotation}} |
|||
* an axis ({{incode|Vector}}) and an angle ({{incode|Angle}} unit or unit-less) |
|||
* three Euler angles {{incode|α}}, {{incode|β}}, {{incode|γ}} |
|||
|- |
|||
| {{incode|mrotate(m; axis; angle)}} |
|||
|- |
|||
| {{incode|mrotate(m; α; β; γ)}} |
|||
|- |
|||
| {{incode|mrotatex(m; angle)}} |
|||
| [https://en.wikipedia.org/wiki/Transformation_matrix#Rotation_2 Rotate] around the X axis. |
|||
|- |
|||
| {{incode|mrotatey(m; angle)}} |
|||
| [https://en.wikipedia.org/wiki/Transformation_matrix#Rotation_2 Rotate] around the Y axis. |
|||
|- |
|||
| {{incode|mrotatez(m; angle)}} |
|||
| [https://en.wikipedia.org/wiki/Transformation_matrix#Rotation_2 Rotate] around the Z axis. |
|||
|- |
|||
| {{incode|mtranslate(m; vector)}} |
|||
| rowspan="2" | [https://en.wikipedia.org/wiki/Translation_(geometry)#Matrix_representation Translate] by a {{incode|vector}} ({{incode|Vector}}) or X, Y, Z values. If a {{incode|Rotation}} is translated, the returned object is a {{incode|Placement}}. |
|||
|- |
|||
| {{incode|mtranslate(m; x; y; z)}} |
|||
|- |
|||
| {{incode|mscale(m; vector)}} |
|||
| rowspan="2" | [https://en.wikipedia.org/wiki/Scaling_(geometry)#Matrix_representation Scale] by a {{incode|vector}} ({{incode|Vector}}) or X, Y, Z values. |
|||
|- |
|||
| {{incode|mscale(m; x; y; z)}} |
|||
|} |
|||
{{Top}} |
|||
<span id="Conditional_expressions"></span> |
|||
== Bedingte Ausdrücke == |
|||
Bedingte Ausdrücke haben die Form {{incode|Bedingung ? ResultatWahr : ResultatFalsch}}. |
|||
<div class="mw-translate-fuzzy"> |
|||
Die Bedingung ist definiert als ein Ausdruck, der entweder zu {{incode|0}} (falsch/false) oder Nicht-Null (wahr/true) ausgewertet wird. |
|||
Trigonometrische Funktionen verwenden Grad als Standardeinheit; durch Hinzufügen von '''rad''' nach dem <em>ersten</em> Wert kann auch die Einheit Radiant in einem Ausdruck verwendet werden. |
|||
Beispiel: cos(45) ist das Gleiche wie cos(pi rad / 4). |
|||
</div> |
|||
Die folgenden [https://de.wikipedia.org/wiki/Vergleichsoperator Vergleichsoperatoren] sind definiert: |
|||
The following units are recognized by the expression parser: |
|||
{| class="wikitable" |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|||
| style="text-align:center;" | '''==''' |
|||
| gleich |
|||
|- |
|||
| style="text-align:center;" | '''!=''' |
|||
| ungleich |
|||
|- |
|||
| style="text-align:center;" | '''>''' |
|||
| größer als |
|||
|- |
|||
| style="text-align:center;" | '''<''' |
|||
| kleiner als |
|||
|- |
|||
| style="text-align:center;" | '''>=''' |
|||
| größer oder gleich |
|||
|- |
|||
| style="text-align:center;" | '''<=''' |
|||
| kleiner oder gleich |
|||
|} |
|||
{{Top}} |
|||
<span id="Units"></span> |
|||
== Einheiten == |
|||
Einheiten können direkt in Ausdrücken verwendet werden. Der Analysator (parser) verbindet sie mit dem vorherigen Wert. So ist {{incode|2mm}} oder {{incode|2 mm}} gültig, während {{incode|mm}} ungültig ist, weil es keinen vorhergehenden Wert gibt. |
|||
Amount of substance: |
|||
{| class="wikitable float-right mw-collapsible mw-collapsed" |
|||
Alle Werte müssen eine Einheit haben. Daher müssen Werte auch in Kalkulationstabellen im allgemeinen eine Einheit haben.<br/> |
|||
!style="width: 33%;"|Unit |
|||
In einigen Fällen funktioniert es auch ohne Einheit, z.B. wenn Sie in Zelle B1 der Kalkulationstabelle z.B. nur die Zahl {{incode|1.5}} haben und sich für eine Blockhöhe darauf beziehen. Dies funktioniert nur, weil die Blockhöhe die Einheit {{incode|mm}} vordefiniert und die verwendet wird, wenn keine Einheit angegeben ist. Es schlägt jedoch fehl, wenn Sie für die Blockhöhe z.B. {{incode|Sketch1.Constraints.Breite - Kalkulationstabelle.B1}} verwenden, weil {{incode|Sketch1.Constraints.Breite}} eine Einheit hat und {{incode|Kalkulationstabelle.B1}} keine Einheit. |
|||
!style="width: 66%;"|Description |
|||
Einheiten mit Exponenten können direkt eingegeben werden. So wird z.B. {{incode|mm^3}} als mm³ erkannt und {{incode|m^3}} wird als m³ erkannt. |
|||
Wenn eine Variable mit dem Namen einer Einheit verwendet wird, muss die Variable in {{incode|<< >>}} gesetzt werden. Das verhindert, dass die Variable als Einheit erkannt wird. Das Maß {{incode|Sketch.Constraints.A}} würde z.B. als Einheit Ampere erkannt werden. Daher muss der Ausdruck als {{incode|Sketch.Constraints.<<A>>}} geschrieben werden. |
|||
Die folgenden Einheiten werden vom Analysator für Ausdrücke erkannt: |
|||
<span id="Amount_of_substance"></span> |
|||
=== Stoffmenge === |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|||
| mmol |
|||
| Milli[https://de.wikipedia.org/wiki/Mol mol] |
|||
|- |
|- |
||
| mol |
| mol |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Mol Mol] |
||
|} |
|} |
||
Angle |
<span id="Angle"></span> |
||
=== Winkel === |
|||
{| class="wikitable float-right mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Unit |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 66%;"|Description |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|- |
||
| ° |
| ° |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Grad_(Winkel) Grad (Winkel)]; Alternative zur Einheit deg |
||
|- |
|- |
||
| deg |
| deg |
||
| [https://en.wikipedia.org/wiki/Degree_(angle) Degree]; |
| [https://en.wikipedia.org/wiki/Degree_(angle) Degree]; Alternative zur Einheit ° |
||
|- |
|- |
||
| rad |
| rad |
||
Line 288: | Line 554: | ||
|- |
|- |
||
| S |
| S |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Winkelminute Winkelsekunde]; Alternative zur Einheit " |
||
|- |
|- |
||
| ″ |
| ″ |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Winkelminute Winkelsekunde]; Alternative zur Einheit S |
||
|- |
|- |
||
| M |
| M |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Winkelminute Winkelminute]; Alternative zur Einheit ' |
||
|- |
|- |
||
| ′ |
| ′ |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Winkelminute Winkelminute]; Alternative zur Einheit M |
||
|} |
|} |
||
Current |
<span id="Current"></span> |
||
=== Strom === |
|||
{| class="wikitable float-right mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Unit |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 66%;"|Description |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|- |
||
| mA |
| mA |
||
| Milli[https:// |
| Milli[https://de.wikipedia.org/wiki/Ampere ampere] |
||
|- |
|- |
||
| A |
| A |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Ampere Ampere] |
||
|- |
|- |
||
| kA |
| kA |
||
| Kilo[https:// |
| Kilo[https://de.wikipedia.org/wiki/Ampere ampere] |
||
|- |
|- |
||
| MA |
| MA |
||
| Mega[https:// |
| Mega[https://de.wikipedia.org/wiki/Ampere ampere] |
||
|} |
|} |
||
<span id="Electric_capacitance"></span> |
|||
Energy / Work: |
|||
=== Elektrische Kapazität === |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|||
| pF |
|||
| Pico[https://de.wikipedia.org/wiki/Farad farad] |
|||
|- |
|||
| nF |
|||
| Nano[https://de.wikipedia.org/wiki/Farad farad] |
|||
|- |
|||
| uF |
|||
| Mikro[https://de.wikipedia.org/wiki/Farad farad]; Alternative zur Einheit ''µF'' |
|||
|- |
|||
| µF |
|||
| Mikro[https://de.wikipedia.org/wiki/Farad farad]; Alternative zur Einheit ''uF'' |
|||
|- |
|||
| mF |
|||
| Milli[https://de.wikipedia.org/wiki/Farad farad] |
|||
|- |
|||
| F |
|||
| [https://de.wikipedia.org/wiki/Farad Farad]; 1 F = 1 s^4·A^2/m^2/kg |
|||
|} |
|||
<span id="Electric_charge"></span> |
|||
=== Elektrische Ladung === |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|||
| C |
|||
| [https://de.wikipedia.org/wiki/Coulomb Coulomb]; 1 C = 1 A*s |
|||
|} |
|||
<span id="Electric_conductivity"></span> |
|||
=== Elektrischer Leitwert === |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|||
| uS |
|||
| Mikro[https://de.wikipedia.org/wiki/Siemens_(Einheit) siemens]; alternative to the unit µS |
|||
|- |
|||
| µS |
|||
| Mikro[https://de.wikipedia.org/wiki/Siemens_(Einheit) siemens]; alternative to the unit uS |
|||
|- |
|||
| mS |
|||
| Milli[https://de.wikipedia.org/wiki/Siemens_(Einheit) siemens] |
|||
|- |
|||
| S |
|||
| [https://de.wikipedia.org/wiki/Siemens_(Einheit) Siemens]; 1 S = 1 s^3·A^2/kg/m^2 |
|||
|- |
|||
| kS |
|||
| Kilo[https://de.wikipedia.org/wiki/Siemens_(Einheit) Siemens] |
|||
|- |
|||
| MS |
|||
| Mega[https://de.wikipedia.org/wiki/Siemens_(Einheit) Siemens] |
|||
|} |
|||
<span id="Electric_inductance"></span> |
|||
=== Elektrische Induktivität === |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|||
| nH |
|||
| Nano[https://de.wikipedia.org/wiki/Henry_(Einheit) henry (Einheit)] |
|||
|- |
|||
| uH |
|||
| Mikro[https://de.wikipedia.org/wiki/Henry_(Einheit) henry (Einheit)]; Alternative zur Einheit ''µH'' |
|||
|- |
|||
| µH |
|||
| Mikro[https://de.wikipedia.org/wiki/Henry_(Einheit) henry (Einheit)]; Alternative zur Einheit ''uH'' |
|||
|- |
|||
| mH |
|||
| Milli[https://de.wikipedia.org/wiki/Henry_(Einheit) henry (Einheit)] |
|||
|- |
|||
| H |
|||
| [https://de.wikipedia.org/wiki/Henry_(Einheit) Henry (Einheit)]; 1 H = 1 kg·m^2/s^2/A^2 |
|||
|} |
|||
<span id="Electric_potential"></span> |
|||
=== Elektrische Spannung === |
|||
Elektrisches Spannung: |
|||
{| class="wikitable float-right mw-collapsible mw-collapsed" |
{| class="wikitable float-right mw-collapsible mw-collapsed" |
||
!style="width: 33%;"| |
!style="width: 33%;"|Einheit |
||
!style="width: 66%;"| |
!style="width: 66%;"|Beschreibung |
||
|- |
|||
| mV |
|||
| Milli[https://de.wikipedia.org/wiki/Volt volt] |
|||
|- |
|||
| V |
|||
| [https://de.wikipedia.org/wiki/Volt Volt] |
|||
|- |
|||
| kV |
|||
| Kilo[https://de.wikipedia.org/wiki/Volt volt] |
|||
|} |
|||
<span id="Electric_resistance"></span> |
|||
=== Elektrischer Widerstand === |
|||
Elektrischer Widerstand: |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|||
| Ohm |
|||
| [https://de.wikipedia.org/wiki/Ohm Ohm]; 1 Ohm = 1 kg·m^2/s^3/A^2 |
|||
|- |
|||
| kOhm |
|||
| Kilo[https://de.wikipedia.org/wiki/Ohm ohm] |
|||
|- |
|||
| MOhm |
|||
| Mega[https://de.wikipedia.org/wiki/Ohm ohm] |
|||
|} |
|||
<span id="Energy/work"></span> |
|||
=== Energie/Arbeit === |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|||
| mJ |
|||
| Milli[https://de.wikipedia.org/wiki/Joule joule] |
|||
|- |
|- |
||
| J |
| J |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Joule Joule] |
||
|- |
|||
| kJ |
|||
| Kilo[https://de.wikipedia.org/wiki/Joule joule] |
|||
|- |
|||
| eV |
|||
| [https://de.wikipedia.org/wiki/Elektronenvolt elektron(en)volt]; 1 eV = 1.602176634e-19 J |
|||
|- |
|||
| keV |
|||
| Kilo[https://de.wikipedia.org/wiki/Elektronenvolt elektron(en)volt] |
|||
|- |
|||
| MeV |
|||
| Mega[https://de.wikipedia.org/wiki/Elektronenvolt elektron(en)volt] |
|||
|- |
|||
| kWh |
|||
| Kilo[https://de.wikipedia.org/wiki/Wattstunde wattstunde]; 1 kWh = 3.6e6 J |
|||
|- |
|- |
||
| Ws |
| Ws |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Joule Wattsekunde]; Alternative zur Einheit Joule |
||
|- |
|- |
||
| VAs |
| VAs |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Joule Voltamperesekunde]; Alternative zur Einheit Joule |
||
|- |
|- |
||
| CV |
| CV |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Joule Coulombvolt]; Alternative zur Einheit Joule |
||
|- |
|||
| cal |
|||
| [https://de.wikipedia.org/wiki/Kalorie Kalorie]; 1 cal = 4.184 J |
|||
|- |
|||
| kcal |
|||
| Kilo[https://de.wikipedia.org/wiki/Kalorie kalorie] |
|||
|} |
|} |
||
Force |
<span id="Force"></span> |
||
=== Kraft === |
|||
{| class="wikitable float-right mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Unit |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 66%;"|Description |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|- |
||
| mN |
| mN |
||
| Milli[https:// |
| Milli[https://de.wikipedia.org/wiki/Newton_(Einheit) newton] |
||
|- |
|- |
||
| N |
| N |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Newton_(Einheit) Newton] |
||
|- |
|- |
||
| kN |
| kN |
||
| Kilo[https:// |
| Kilo[https://de.wikipedia.org/wiki/Newton_(Einheit) newton] |
||
|- |
|- |
||
| MN |
| MN |
||
| Mega[https:// |
| Mega[https://de.wikipedia.org/wiki/Newton_(Einheit) newton] |
||
|- |
|- |
||
| lbf |
| lbf |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Pound-force Pound-force] |
||
|} |
|} |
||
Length |
<span id="Length"></span> |
||
=== Länge === |
|||
{| class="wikitable float-right mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Unit |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 66%;"|Description |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|- |
||
| nm |
| nm |
||
| Nano[https:// |
| Nano[https://de.wikipedia.org/wiki/Meter meter] |
||
|- |
|- |
||
| um |
| um |
||
| |
| Mikro[https://de.wikipedia.org/wiki/Meter meter]; Alternative zur Einheit µm |
||
|- |
|- |
||
| µm |
| µm |
||
| |
| Mikro[https://de.wikipedia.org/wiki/Meter meter]; Alternative zur Einheit um |
||
|- |
|- |
||
| mm |
| mm |
||
| Milli[https:// |
| Milli[https://de.wikipedia.org/wiki/Meter meter] |
||
|- |
|- |
||
| cm |
| cm |
||
| |
| Zenti[https://de.wikipedia.org/wiki/Meter meter] |
||
|- |
|||
| mm |
|||
| Milli[https://en.wikipedia.org/wiki/Metre meter] |
|||
|- |
|- |
||
| dm |
| dm |
||
| |
| Dezi[https://de.wikipedia.org/wiki/Meter meter] |
||
|- |
|- |
||
| m |
| m |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Meter Meter] |
||
|- |
|- |
||
| km |
| km |
||
| Kilo[https:// |
| Kilo[https://de.wikipedia.org/wiki/Meter meter] |
||
|- |
|- |
||
| mil |
| mil |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Thou Thou] (Abk. f. Thousandth of an inch); Alternative zur Einheit thou |
||
|- |
|- |
||
| thou |
| thou |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Thou Thou] (Abk. f. Thousandth of an inch); Alternative zur Einheit mil |
||
|- |
|- |
||
| in |
| in |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Zoll_(Einheit) Zoll (Einheit)], in = inch, Alternative zur Einheit " |
||
|- |
|||
| " |
|||
| [https://en.wikipedia.org/wiki/Inch Inch]; Alternative zur Einheit in |
|||
|- |
|- |
||
| ft |
| ft |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Fu%C3%9F_(Einheit) Fuß (Einheit)]; Alternative zur Einheit ' |
||
|- |
|- |
||
| ' |
| ' |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Fu%C3%9F_(Einheit) Fuß (Einheit)]; Alternative zur Einheit ft |
||
|- |
|- |
||
| yd |
| yd |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Yard Yard] |
||
|- |
|- |
||
| mi |
| mi |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Meile Meile] |
||
|} |
|} |
||
<span id="Luminous_intensity"></span> |
|||
Luminous intensity: |
|||
=== Lichtstärke === |
|||
{| class="wikitable float-right mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Unit |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 66%;"|Description |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|- |
||
| cd |
| cd |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Candela Candela] |
||
|} |
|} |
||
<span id="Magnetic_flux"></span> |
|||
Mass: |
|||
=== Magnetischer Fluss === |
|||
{| class="wikitable float-right mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Unit |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 66%;"|Description |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|||
| Wb |
|||
| [https://de.wikipedia.org/wiki/Weber_(Einheit) Weber (Einheit)]; 1 Wb = 1 kg*m^2/s^2/A ' |
|||
|} |
|||
<span id="Magnetic_flux_density"></span> |
|||
=== Magnetische Flussdichte === |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|||
| G |
|||
| [https://de.wikipedia.org/wiki/Gau%C3%9F_(Einheit) Gauß (Einheit)]; 1 G = 1 e-4 T |
|||
|- |
|||
| T |
|||
| [https://de.wikipedia.org/wiki/Tesla_(Einheit) Tesla (Einheit)]; 1 T = 1 kg/s^2/A |
|||
|} |
|||
<span id="Mass"></span> |
|||
=== Masse === |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|- |
||
| ug |
| ug |
||
| |
| Mikro[https://de.wikipedia.org/wiki/Gramm gramm]; Alternative zur Einheit µg |
||
|- |
|- |
||
| µg |
| µg |
||
| |
| Mikro[https://de.wikipedia.org/wiki/Gramm gramm]; Alternative zur Einheit ug |
||
|- |
|- |
||
| mg |
| mg |
||
| Milli[https:// |
| Milli[https://de.wikipedia.org/wiki/Gramm gramm] |
||
|- |
|- |
||
| g |
| g |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Gramm Gramm] |
||
|- |
|- |
||
| kg |
| kg |
||
| Kilo[https:// |
| Kilo[https://de.wikipedia.org/wiki/Gramm gramm] |
||
|- |
|- |
||
| t |
| t |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Tonne_(Einheit) Tonne (Einheit)] |
||
|- |
|- |
||
| oz |
| oz |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Unze Unze] |
||
|- |
|- |
||
| lb |
| lb |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Pfund Pfund]; Alternative zur Einheit lbm |
||
|- |
|- |
||
| lbm |
| lbm |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Pfund Pfund]; Alternative zur Einheit lb |
||
|- |
|- |
||
| st |
| st |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Stone_(Einheit) Stone (Einheit)] |
||
|- |
|- |
||
| cwt |
| cwt |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Hundredweight Hundredweight] |
||
|} |
|} |
||
<span id="Power"></span> |
|||
<div class="mw-translate-fuzzy"> |
|||
=== |
=== Leistung === |
||
</div> |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
Pressure: |
|||
!style="width: 33%;"|Einheit |
|||
{| class="wikitable float-right mw-collapsible mw-collapsed" |
|||
!style="width: |
!style="width: 66%;"|Beschreibung |
||
|- |
|||
!style="width: 66%;"|Description |
|||
| W |
|||
| [https://de.wikipedia.org/wiki/Watt_(Einheit) Watt] |
|||
|- |
|||
| kW |
|||
| Kilo[https://de.wikipedia.org/wiki/Watt_(Einheit) watt] |
|||
|} |
|||
<span id="Pressure"></span> |
|||
=== Druck === |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|- |
||
| Pa |
| Pa |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Pascal_(Einheit) Pascal (Einheit)] |
||
|- |
|- |
||
| kPa |
| kPa |
||
| Kilo[https:// |
| Kilo-[https://de.wikipedia.org/wiki/Pascal_(Einheit) Pascal (Einheit)] |
||
|- |
|- |
||
| MPa |
| MPa |
||
| Mega[https:// |
| Mega-[https://de.wikipedia.org/wiki/Pascal_(Einheit) Pascal (Einheit)] |
||
|- |
|- |
||
| GPa |
| GPa |
||
| Giga[https:// |
| Giga-[https://de.wikipedia.org/wiki/Pascal_(Einheit) Pascal (Einheit)] |
||
|- |
|- |
||
| uTorr |
| uTorr |
||
| |
| Mikro-[https://de.wikipedia.org/wiki/Torr Torr]; Alternative zu Einheit µTorr |
||
|- |
|- |
||
| µTorr |
| µTorr |
||
| |
| Mikro-[https://de.wikipedia.org/wiki/Torr Torr]; Alternative zu Einheit uTorr |
||
|- |
|- |
||
| mTorr |
| mTorr |
||
| Milli[https:// |
| Milli-[https://de.wikipedia.org/wiki/Torr Torr] |
||
|- |
|- |
||
| Torr |
| Torr |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Torr Torr]; 1 Torr = 133.32 Pa |
||
|- |
|- |
||
| psi |
| psi |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Pound-force_per_square_inch Pound-force per square inch]; 1 psi = 6.895 kPa |
||
|- |
|- |
||
| ksi |
| ksi |
||
| Kilo[https://en.wikipedia.org/wiki/Pounds_per_square_inch |
| Kilo-[https://en.wikipedia.org/wiki/Pounds_per_square_inch Pound-force per square inch] |
||
|} |
|} |
||
Temperature |
<span id="Temperature"></span> |
||
=== Temperatur === |
|||
{| class="wikitable float-right mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Unit |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 66%;"|Description |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|- |
||
| uK |
| uK |
||
| |
| Mikro[https://de.wikipedia.org/wiki/Kelvin kelvin]; Alternative zur Einheit ''µK'' |
||
|- |
|- |
||
| µK |
| µK |
||
| |
| Mikro[https://de.wikipedia.org/wiki/Kelvin kelvin]; Alternative zur Einheit ''uK'' |
||
|- |
|- |
||
| mK |
| mK |
||
| Milli[https:// |
| Milli[https://de.wikipedia.org/wiki/Kelvin kelvin] |
||
|- |
|- |
||
| K |
| K |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Kelvin Kelvin] |
||
|} |
|} |
||
<span id="Time"></span> |
|||
Time: |
|||
=== Zeit === |
|||
{| class="wikitable float-right mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Unit |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 66%;"|Description |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|- |
||
| s |
| s |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Sekunde Secunde] |
||
|- |
|- |
||
| min |
| min |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Minute Minute] |
||
|- |
|- |
||
| h |
| h |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Stunde Stunde] |
||
|} |
|||
Torque: |
|||
{| class="wikitable float-right mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Unit |
|||
!style="width: 66%;"|Description |
|||
|- |
|- |
||
| Hz (1/s) |
|||
| Nm |
|||
| [https:// |
| [https://de.wikipedia.org/wiki/Hertz_(Einheit) Hertz] |
||
|} |
|||
Volume: |
|||
{| class="wikitable float-right mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Unit |
|||
!style="width: 66%;"|Description |
|||
|- |
|- |
||
| |
| kHz |
||
| [https:// |
| Kilo[https://de.wikipedia.org/wiki/Hertz_(Einheit) hertz], |
||
|} |
|||
The following commonly used units are not yet supported: |
|||
{| class="wikitable float-right mw-collapsible mw-collapsed" |
|||
!style="width: 25%;"|Unit |
|||
!style="width: 50%;"|Description |
|||
!style="width: 25%;"|Alternative |
|||
|- |
|- |
||
| |
| MHz |
||
| [https:// |
| Mega[https://de.wikipedia.org/wiki/Hertz_(Einheit) hertz] |
||
| 1 A*s |
|||
|- |
|- |
||
| |
| GHz |
||
| [https:// |
| Giga[https://de.wikipedia.org/wiki/Hertz_(Einheit) hertz] |
||
| 1 /s |
|||
|- |
|- |
||
| |
| THz |
||
| [https:// |
| Tera[https://de.wikipedia.org/wiki/Hertz_(Einheit) hertz] |
||
|} |
|||
| 1 W/A |
|||
<span id="Volume"></span> |
|||
=== Volumen === |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|- |
||
| |
| ml |
||
| [https:// |
| Milli[https://de.wikipedia.org/wiki/Liter liter] |
||
| 1.602176634e-19 J |
|||
|- |
|- |
||
| |
| l |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Liter Liter] |
||
| 3.6e6 J |
|||
|- |
|- |
||
| |
| cft |
||
| [https:// |
| Kubik[https://de.wikipedia.org/wiki/Fuß_(Einheit) fuß] |
||
|} |
|||
| 100 kPa |
|||
<span id="Special_imperial_units"></span> |
|||
=== Spezielle nichtmetrische Einheiten === |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 33%;"|Einheit |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|- |
||
| |
| mph |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Meilen_pro_Stunde Meilen pro Stunde] |
||
| 1 kg/s^2/A |
|||
|- |
|- |
||
| |
| sqft |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Quadratfu%C3%9F Quadratfuß] |
||
|} |
|||
| 1 s^4*A^2/m^2/kg |
|||
<span id="Unsupported_units"></span> |
|||
=== Nicht unterstützte Einheiten === |
|||
Die folgenden häufig verwendeten Einheiten werden noch nicht unterstützt, für einige gibt es aber Alternativen: |
|||
{| class="wikitable mw-collapsible mw-collapsed" |
|||
!style="width: 25%;"|Einheit |
|||
!style="width: 50%;"|Beschreibung |
|||
!style="width: 25%;"|Alternative |
|||
|- |
|- |
||
| |
| °C |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Grad_Celsius Grad Celsius ] |
||
| [°C] + 273.15 K |
|||
| 1 kg*m^2/s^2/A^2 |
|||
|- |
|||
| °F |
|||
| [https://de.wikipedia.org/wiki/Grad_Fahrenheit Grad Fahrenheit]; |
|||
| ([°F] + 459.67) × 5/9 |
|||
|- |
|- |
||
| u |
| u |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Atomare_Masseneinheit Atomare Masseneinheit]; Alternative zur Einheit Da (Dalton) = |
||
| 1.66053906660e-27 kg |
| 1.66053906660e-27 kg |
||
|- |
|- |
||
| Da |
| Da |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Atomare_Masseneinheit Dalton]; Alternative zur Einheit u |
||
| 1.66053906660e-27 kg |
| 1.66053906660e-27 kg |
||
|- |
|||
| cal |
|||
| [https://en.wikipedia.org/wiki/Calorie Calorie] |
|||
| 4.184 J |
|||
|- |
|- |
||
| sr |
| sr |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Steradiant Steradiant] |
||
| nicht direkt |
|||
| not directly |
|||
|- |
|- |
||
| lm |
| lm |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Lumen_(Einheit) Lumen (Einheit)] |
||
| nicht direkt |
|||
| not directly |
|||
|- |
|- |
||
| lx |
| lx |
||
| [https:// |
| [https://de.wikipedia.org/wiki/Lux_(Einheit) Lux (Einheit)] |
||
| nicht direkt |
|||
| not directly |
|||
|- |
|- |
||
| |
| px |
||
| |
| [https://de.wikipedia.org/wiki/Pixel Pixel] |
||
| |
| nicht direkt |
||
|} |
|} |
||
{{Top}} |
|||
<span id="Invalid_characters_and_names"></span> |
|||
==Ungültige Zeichen und Namen== |
|||
Das Ausdrucks-Feature ist sehr leistungsfähig. Um das zu ermöglichen gibt es ein paar Einschränkungen bei ein paar Zeichen. Als Abhilfe gibt es in FreeCAD die Möglichkeit anstatt der Objektnamen sog. Bezeichner ('labels') zu verwenden und sich auf diese zu beziehen. |
|||
== Referenzen auf CAD-Daten == |
|||
In Fällen, in denen du keine Beschriftung verwenden kannst, wie z. B. der Name einer Skizzenbeschränkung, musst du dir bewusst sein, welche Zeichen nicht erlaubt sind. |
|||
<div class="mw-translate-fuzzy"> |
|||
Größenangaben von anderen Elementen der Konstruktion können in Rechenausdrücken verwendet werden. Die Syntax für eine Referenz auf ein Eigenschaftenfeld sieht wie folgt aus: Objekt.Eigenschaft. Wenn sich die Eigenschaft aus einer Reihe von Feldern zusammensetzt, kann wie folgt darauf zugegriffen werden: Object.Eigenschaft.Feldname. |
|||
</div> |
|||
<span id="Labels"></span> |
|||
<div class="mw-translate-fuzzy"> |
|||
===Bezeichner=== |
|||
Die folgende Tabelle zeigt einige Beispiele: |
|||
{|{{Prettytable}} |
|||
Für [[Object_name/de#Bezeichner|Bezeichner]] gibt es keine ungültigen Zeichen, jedoch müssen einige Zeichen maskiert werden: |
|||
{| class="wikitable" |
|||
!style="width: 33%;"|Zeichen |
|||
!style="Breite: 66%;"|Beschreibung |
|||
|- |
|||
| {{incode|'}}, {{incode|\}}, {{incode|"}} |
|||
| Müssen durch das Voranstellen von {{incode|\}} maskiert werden. |
|||
|} |
|||
Zum Beispiel muss der Bezeichner {{incode|Skizze\002}} als {{incode|<<Skizze\002>>}} referenziert werden. |
|||
<span id="Names"></span> |
|||
===Namen=== |
|||
[[Object_name/de#Name|Namen]] von Objekten wie Maße, Skizzen, usw. dürfen folgende Zeichen oder Zeichenfolgen nicht enthalten. Anderenfalls ist der Namen ungültig. |
|||
{| class="wikitable float-right mw-collapsible mw-uncollapsed" |
|||
!style="width: 33%;"|Zeichen / Zeichenfolgen |
|||
!style="width: 66%;"|Beschreibung |
|||
|- |
|||
| '''+''', '''-''', '''*''', '''/''', '''^''', '''_''', '''<''', '''>''', '''(''', ''')''', '''{''', '''}''', '''[''', ''']''', '''.''', ''',''', '''=''' |
|||
| Zeichen die mathematische Operatoren oder mathematische Konstruktionen sind. |
|||
|- |
|||
| '''A''', '''kA''', '''mA''', '''MA''', '''J''', '''K''', ''' ' ''', ''' ft ''', '''°''', und viele andere! |
|||
| Zeichen und Zeichenfolgen, die Einheiten sind (siehe Abschnitt [[#Einheiten|Einheiten]] ). |
|||
|- |
|||
| '''#''', '''!''', '''?''', '''§''', '''$''', '''%''', '''&''', ''':''', ''';''', '''\''', '''<nowiki>|</nowiki>''', '''~''', '''∆''', '''¿''', und viele andere! |
|||
| Zeichen, die als Platzhalter verwendet werden oder die Funktionen auslösen. |
|||
|- |
|||
| '''pi''', '''e''' |
|||
| Mathematische Konstanten |
|||
|- |
|||
| '''´''', '''`''', ''' ' ''', '''"''' |
|||
| Akzente |
|||
|- |
|||
| Leerzeichen (Space) |
|||
| Ein Leerzeichen definiert das Ende eines Namens und kann daher nicht verwendet werden. |
|||
|} |
|||
Beispielsweise ist folgender Name gültig: {{incode|<<Sketch>>.Constraints.T2üßµ@}}. |
|||
Hingegen sind diese ungültige Namen: {{incode|<<Sketch>>.Constraints.test\result_2}} (\r bedeutet "Wagenrücklauf (carriage return)") oder'''<<Sketch>>.Constraints.mol''' (mol ist eine Einheit). |
|||
Da kürzere Namen (vor allem, wenn sie nur ein oder zwei Zeichen haben) leicht zu ungültigen Namen führen können, sollte die Verwendung längerer Namen in Betracht gezogen und/oder eine geeignete Namenskonvention festgelegt werden. |
|||
<span id="Cell_aliases"></span> |
|||
===Zell Aliasse=== |
|||
Siehe [[Spreadsheet_SetAlias/de#Anwendung|Spreadsheet Alias-Namen festlegen]]. |
|||
{{Top}} |
|||
<span id="Reference_to_CAD_data"></span> |
|||
== Referenzen auf CAD Daten == |
|||
Es ist möglich, Daten aus dem Modell selbst in einem Ausdruck zu verwenden. Um auf eine Eigenschaft zu verweisen, wird {{incode|Objekt-Name.property}} oder {{incode|<<Objekt-Benennung>>.property}}. Benennungen (Label) müssen in {{incode|<<}} und {{incode|>>}} eingeschlossen werden. Sollen Benennungen verwendet werden, müssen sie eindeutig sein. |
|||
Alle weiteren Beispiele referenzieren ein Objekt über seinen Namen, aber seine Benennung kann ebenfalls verwendet werden. |
|||
If the property is a compound of fields, the individual fields can be accessed as {{incode|object_name.property.field}}. |
|||
Um auf Listenobjekte zu verweisen, wird {{incode|ObjektName.list[list_index]}} verwendet. |
|||
Soll beispielsweise auf eine Randbedingung in einer Skizze verwiesen werden, wird {{incode|Skizze.Constraints[16]}} verwendet. Ist eine Skizze im Bearbeitungsmodus geöffnetbefindest, kann man den Namen weglassen und einfach {{incode|Constraints[16]}} verwenden. Man beachte, dass der Index mit 0 beginnt, daher muss die 17. Randbedingung als {{incode|Constraints[16]}} referenziert werden. |
|||
Um auf das Objekt selbst zu referenziertem wird die Pseudo-Eigenschaft {{incode|_self}} verwendet: {{incode|Objekt-Name._self}}. |
|||
Die folgende Tabelle zeigt einige weitere Beispiele: |
|||
{|class="wikitable" |
|||
!CAD-Daten |
!CAD-Daten |
||
!Aufruf im |
!Aufruf im Ausdruck |
||
!Ergebnis |
!Ergebnis |
||
|- |
|- |
||
| |
|Länge eines [[Part_Box/de|Part Würfels]] |
||
| |
|{{incode|Box.Length}} |
||
|Länge mit |
|Länge mit Einheit (mm) |
||
|- |
|- |
||
|Volumen des |
|Volumen des Würfels |
||
| |
|{{incode|Box.Shape.Volume}} |
||
|Volumen |
|Volumen in mm³ ohne Einheit |
||
|- |
|- |
||
|Formart des Würfels |
|||
|Typ des Quader-Shapess (geometrische Figur) |
|||
| |
|{{incode|Box.Shape.ShapeType}} |
||
|String: Solid |
|Zeichenkette (String): Solid |
||
|- |
|- |
||
| |
|Bezeichnung des Würfels |
||
| |
|{{incode|Box.Label}} |
||
|String: |
|Zeichenkette (String): Label |
||
|- |
|- |
||
| |
|X-Koordinate des Schwerpunktes des Würfels |
||
| |
|{{incode|Box.Shape.CenterOfMass.x}} |
||
| |
|X-Koordinate in mm ohne Einheit |
||
|- |
|- |
||
|X-Koordinate der Positionierung des Würfels |
|||
|Wert einer Beschränkung in einer Skizze |
|||
|{{incode|Box.Placement.Base.x}} |
|||
|Constraints.Breite |
|||
|X-Koordinate mit Einheit (mm) |
|||
|Numerischer Wert der benannten Beschränkung 'Breite' in der Skizze |
|||
|- |
|||
|X-Komponente der Rotationsachsen der Positionierung des Würfels |
|||
|{{incode|Box.Placement.Rotation.Axis.x}} |
|||
|X-Komponente des Einheitsvektors in mm ohne Einheit |
|||
|- |
|||
|Rotationswinkel der Positionierung des Würfels |
|||
|{{incode|Box.Placement.Rotation.Angle}} |
|||
|Rotationswinkel mit Einheit (° = Grad = deg) |
|||
|- |
|||
|Das ganze Würfel-Objekt |
|||
|{{incode|Box._self}} |
|||
|Objekt der Art <Part::PartFeature> |
|||
|- |
|||
|Wert einer Randbedingung in einer Skizze |
|||
|{{incode|Constraints.Width}} |
|||
|Zahlenwert der benannten Randbedingung {{incode|Width}} (Breite) in der Skizze, wenn der Ausdruck in der Skizze selbst verwendet wird. |
|||
|- |
|||
|Wert einer Randbedingung in einer Skizze |
|||
|{{incode|MySketch.Constraints.Width}} |
|||
|Zahlenwert der benannten Randbedingung {{incode|Width}} in der Skizze {{incode|MySketch}}, wenn der Ausdruck außerhalb der Skizze verwendet wird. |
|||
|- |
|- |
||
|Wert eines Alias einer Kalkulationstabelle |
|Wert eines Alias einer Kalkulationstabelle |
||
|Spreadsheet. |
|{{incode|Spreadsheet.Depth}} |
||
|Wert des Alias |
|Wert des Alias {{incode|Depth}} (Tiefe) in der Kalkulationstabelle {{incode|Spreadsheet}} |
||
|- |
|- |
||
|Wert einer lokalen Eigenschaft |
|Wert einer lokalen Eigenschaft eines Objekts |
||
|Length |
|{{incode|Length}} |
||
|Wert der |
|Wert der {{PropertyData/de|Length}} (Länge) z.B. in einem Pad-Objekt, wenn der Ausdruck z.B. in {{PropertyData/de|Length2}} im selben Objekt verwendet wird. |
||
|} |
|||
</div> |
|||
=== Cyclic dependencies === |
|||
==Dokumentweit gültige globale Variablen== |
|||
FreeCAD checks dependencies based on the relationship between document objects, not properties. This means that you cannot provide data to an object and query that same object for results. For example, even though there are no cyclic dependencies when the properties themselves are considered, you may not have an object which gets its dimensions from a spreadsheet and then display the volume of that object in the same spreadsheet. You have to use two spreadsheets, one to drive your model and the other for reporting. |
|||
Es gibt aktuell keine Infrastruktur für globale Variablen in FreeCAD. Stattdessen können beliebige Variablen als Zellwerte innerhalb einer Tabelle des Arbeitsbereiches [[Spreadsheet Workbench/de|Tabellenkalkulation (Spreadsheet)]] definiert werden und ihnen ein Name mittels der Alias-Eigenschaft für Zellen zugeordnet werden(Rechtsklick auf die Zelle). Danach können die Zellwerte in allen Rechenausdrücken verwendet werden, sie wie andere Eigenschaften von Objekten auch. |
|||
As a workaround it is possible to display a cell range from the second spreadsheet in the first (or vice versa) by creating a [[Spreadsheet_Workbench#Cell_binding|cell binding]] with the {{MenuCommand|Hide dependency of binding}} option. |
|||
==Dokumentübergreifende Verlinkung== |
|||
Another way to workaround cyclic dependencies is to hide the reference by using the {{incode|href}} or {{incode|hiddenref}} function for individual expressions, for example: {{incode|href(Box.Length)}}. |
|||
<div class="mw-translate-fuzzy"> |
|||
Es ist möglich, eine Tabelle in einem Dokument aus einem anderen Dokument zu referenzieren. |
|||
</div> |
|||
Please note that both mentioned workarounds should be used with caution, and that they do not work if the properties that are reported depend on dimensions that are driven from the same spreadsheet. |
|||
<div class="mw-translate-fuzzy"> |
|||
{{Top}} |
|||
Wichtiger Hinweis: Der Name des Dokuments muss angegeben werden, um es von einem anderen Dokument aus referenzieren zu können. Wenn ein Dokument nun zum ersten Mal gespeichert wird, muss dem Dokument ein Name gegeben werden, der normalerweise nicht "Unbenannt1" (oder eine anderssprachige Version) ist, und dann sind die Links beim erneuten Öffnen verloren. Deshalb ist es empfehlenswert zuerst das Stammdokument mit der Tabelle zu erstellen, zu speichern und zu schließen. Nach dem erneuten Öffnen wird der interne Name auf den Dateinamen gesetzt. Danach kann das Dokument geändert und gespeichert werden, aber es darf nicht umbenannt werden. |
|||
<span id="Document-wide_global_variables"></span> |
|||
</div> |
|||
==Dokumentweit gültige globale Variablen== |
|||
In FreeCAD gibt es zur Zeit kein Konzept für globale Variablen. Stattdessen können beliebige Variablen mit Hilfe der [[Spreadsheet Workbench/de|Arbeitsbereich Kalkulationstabelle]] als Zellen in einer Kalkulationstabelle definiert werden und dann mit Hilfe der Alias Eigenschaft für die Zelle (Rechtsklick auf die Zelle) einen Namen erhalten. Dann kann von jedem Ausdruck aus auf sie zugegriffen werden, wie auf jede andere Objekteigenschaft auch. |
|||
<div class="mw-translate-fuzzy"> |
|||
{{Top}} |
|||
Danach können weitere Dokumente erstellt werden in denen entsprechende Rechenausdrücke eingesetzt werden. Angenommen, dass das Stammdokument "Stammdaten" genannt wurde, können Referenzen auf das Stammdokument wie folgt eingesetzt werden: Stammdaten#Spreadsheet.Length |
|||
<span id="Cross-document_linking"></span> |
|||
</div> |
|||
== Dokumentenübergreifende Verweise == |
|||
Es ist (mit Begrenzungen) möglich, eine Eigenschaft eines Objekts in deinem aktuellen Dokument (".FCstd" Datei) durch Verwendung eines Ausdrucks zu definieren, um auf eine Eigenschaft eines Objekts in einem anderen Dokument zu verweisen (".FCstd" file). Zum Beispiel kann eine Zelle in einer Kalkulationstabelle oder die {{PropertyData/de|Länge}} eines Formteil Würfels usw. in einem Dokument durch einen Ausdruck definiert werden, der auf den X Platzierungswert oder eine andere Eigenschaft eines Objekts in einem anderen Dokument verweist. |
|||
master#modelConstants.Length |
|||
Der Name des Dokuments wird verwendet, um von einem anderen Dokument aus darauf zu referenzieren. Wenn ein Dokument zum ersten Mal gespeichert wird, muss dem Dokument ein Name gegeben werden. Dies ist normalerweise ein anderer Name als die Vorgabe "Unbenannt1". Um zu verhindern, dass Verknüpfungen beim Speichern des Hauptdokumentes verloren gehen, wenn dieses dabei einen anderen Namen bekommt, sollte das Hauptdokument zuerst mit einer Kalkulationstabelle erstellt werden. Danach kann der Inhalt des Dokuments geändert und das Dokument gespeichert werden, aber es darf nicht umbenannt werden. |
|||
Note that the master document must be loaded for the values in the master to be available to the dependent document. |
|||
Sobald das Mutterdokument mit der Kalkulationstabelle erstellt und gespeichert (benannt) ist, können abhängige Dokumente erstellt werden. Angenommen, du nennst das Mutterdokument {{incode|master}}, die Kalkulationstabelle {{incode|modelConstants}} und gibst einer Zelle einen Alias-Namen {{incode|Length}}, dann kannst du auf den Wert zugreifen als: |
|||
<div class="mw-translate-fuzzy"> |
|||
Unglücklicherweise ist der eingebaute Formelprüfer mehr verwirrend als hilfreich, weil er immer wieder Interpretationsfehler meldet, dass dieses oder jenes nicht existiert. Daher einfach mit dem Eintippen fortfahren. Wenn man fertig ist und der Inhalt stimmt, dann wird plötzlich OK gemeldet. |
|||
</div> |
|||
{{incode|master#modelConstants.Length}} |
|||
Bei der Verwendung verknüpfter Dokumente ist der Benutzer dafür verantwortlich, dass alle Dokumente auch geöffnet sind, wenn irgendwelche Änderungen vorzunehmen sind. |
|||
Man beachte, dass das Hauptdokument geladen sein muss, damit die Werte des Hauptdokuments für das abhängige Dokument verfügbar sind. |
|||
==Bekannte Probleme / Verbliebene Aufgaben== |
|||
Natürlich liegt es bei dir, die zugehörigen Dokumente später zu laden, wenn du etwas ändern willst. |
|||
<div class="mw-translate-fuzzy"> |
|||
{{Top}} |
|||
* Der Abhängigkeitsgraph basiert auf der Beziehung zwischen Objekten des Dokuments und nicht auf Beziehungen zwischen Eigenschaften. Das bedeutet, dass man nicht Daten einem Objekt zur Verfügung stellen kann und gleichzeitig Daten von diesem Objekt abfragt, selbst wenn keine zyklische Verknüpfung auf Basis der Eigenschaften besteht. Zur Umgehung des Problems können mehrere Tabellen angelegt werden: Eine Tabelle, die die Objektdaten zur Verfügung stellt und eine andere zur Datenauswertung. |
|||
<span id="Known_issues_/_remaining_tasks"></span> |
|||
* Es gibt keinen Manager für Rechenausdrücke, mit dem alle vorhandenen Rechenausdrücke aufgelistet werden können oder sonst wie erstellt, gelöscht oder gesucht werden können. |
|||
==Bekannte Probleme / Verbleibende Aufgaben== |
|||
* Offene Fehler/Tickets für die Rechenausdrücke (Expressions) können hier nachgeschlagen werden: [https://freecadweb.org/tracker/set_project.php?project_id=4;20 FreeCAD Bugtracker Expressions category] |
|||
</div> |
|||
* FreeCAD hat bisher keinen eingebauten Ausdrucksmanager, der alle Ausdrücke in einem Dokument auflistet und sie erstellt, löscht, abfragt, etc. Aber es ist ein Addon verfügbar: [https://github.com/gbroques/fcxref fcxref expression manager]. |
|||
{{Userdocnavi/de}} |
|||
* Offene Fehler/Tickets für die Ausdrücke (Expressions) können hier gefunden werden: [https://github.com/FreeCAD/FreeCAD/issues?q=is%3Aissue+is%3Aopen+label%3AExpressions GitHub]. |
|||
[[Category:User Documentation/de]] |
|||
{{Top}} |
|||
[[Category:API/de]] |
|||
{{Powerdocnavi{{#translation:}}}} |
|||
{{clear}} |
|||
[[Category:Spreadsheet{{#translation:}}]] |
Latest revision as of 10:02, 21 April 2024
Übersicht
Es ist möglich, Eigenschaften unter Verwendung von mathematischen Ausdrücken festzulegen. In der GUI enthalten Drehfelder oder Eingabefelder, die an Eigenschaften gebunden sind, ein blaues Symbol . Klicken auf das Symbol oder Eingeben des Gleichheitszeichens = ruft den Ausdruckseditor für diese bestimmte Eigenschaft auf.
Ein FreeCAD-Ausdruck ist ein mathematischer Ausdruck, der die mathematischen Standard- Operatoren, Funktionen und vorgegebene Konstanten verwendet, wie unten beschrieben. Zusätzlich können Ausdrücke auf Objekteigenschaften referenzieren und auch Bedingte Ausdrücke verwenden. Zahlen in Ausdrücken können optionale Einheiten angefügt werden.
Zahlen können entweder ein Komma ,
oder einen Dezimalpunkt .
zur Trennung von Ganzzahlen und Nachkommastellen verwenden. Wenn ein Dezimaltrennzeichen benutzt wird, muss danach mindestens eine Ziffer folgen.
Daher sind die Ausdrücke 1.+2.
und 1,+2,
ungültig, aber 1.0 + 2.0
und 1,0 + 2,0
sind gültig.
Operatoren und Funktionen beachten die Einheiten und erfordern gültige Kombinationen von Einheiten, falls verfügbar. Zum Beispiel ist 2mm + 4mm
ein gültiger Ausdruck, während 2mm + 4
kein gültiger Ausdruck ist.
Dies gilt auch für Referenzen auf Objekteigenschaften, die Einheiten beinhalten, wie z.B. Längeneigenschaften. Daher ist Pad001.Length + 1
ungültig, da es einer Eigenschaft mit Längeneinheit nur eine Zahl ohne Einheit hinzufügt; gültig wäre Pad001.Length + 1mm
.
Einige Fehler im Zusammenhang mit Einheiten können unverständlich erscheinen, wenn Ausdrücke abgelehnt werden oder die Ergebnisse nicht den Einheiten der bearbeiteten Eigenschaft entsprechen. Ein paar Beispiele:
1/2mm
wird nicht als halber Millimeter angesehen sondern als 1/(2mm)
und ergibt: 0.5 mm^-1
.
sqrt(2)mm
ist ungültig, da der Funktionsaufruf keine Zahl ist. Dies muss so eingegeben werden: sqrt(2) * 1mm
.
Funktionsargumente
Mehrere Argumente zu einer Funktion können entweder durch ein Semikolon ;
oder ein Komma gefolgt von einem Leerzeichen ,
getrennt werden. Im letzteren Fall wird das Komma nach der Eingabe in ein Semikolon umgewandelt. Wenn ein Semikolon verwendet wird, ist kein Leerzeichen am Ende des Semikolons erforderlich.
Die Argumente können Verweise auf Zellen in einer Kalkulationstabelle enthalten. Ein Zellverweis besteht aus dem großen Zeilenbuchstaben der Zelle, gefolgt von ihrer Spaltennummer, zum Beispiel A1
. Eine Zelle kann auch durch den Alias der Zelle referenziert werden, zum Beispiel Tabellenblatt.MeineTeilbreite
.
Referenzierende Objekte
Wie oben schon gezeigt, kann ein Objekt über seinen Daten-EigenschaftNamen referenziert werden. Es kann aber auch seine Daten-EigenschaftBenennung (Label) verwendet werden. Im Falle einer Daten-EigenschaftBenennung muss sie in doppelten <<
und >>
Symbolen eingeschlossen sein, wie z.B. <<Benennung>>
.
Jede Eigenschaft eines Objekts kann referenziert werden. Um sich beispielsweise auf die Höhe eines Zylinders zu beziehen, kann Zylinder.Height
oder <<Benennung_des_Zylinders>>.Height
verwendet werden.
Für weitere Informationen über das Referenzieren von Objekten siehe Auf CAD-Daten referenzieren.
Unterstützte Konstanten
Die folgenden Konstanten werden unterstützt:
Konstante | Beschreibung |
---|---|
e | Eulersche Zahl |
pi | Kreiszahl |
Unterstützte Operatoren
Die folgenden Operatoren werden untertstützt:
Operator | Beschreibung |
---|---|
+ | Addition |
- | Subtraktion |
* | Multiplikation |
/ | Fließkomma Division |
% | Division mit Rest |
^ | Potenz |
Unterstützte Funktionen
Allgemeine mathematische Funktionen
Die folgenden mathematischen Funktionen werden untertstützt:
Trigonometrische Funktionen
Trigonometrische Funktionen verwenden Grad als Standardeinheit. Für die Angabe im Bogenmaß wird rad
nach dem ersten Wert in einem Ausdruck hinzugefügt. So ist z.B. cos(45)
das gleiche, wie cos(pi rad / 4)
. Ausdrücke in Grad können entweder deg
oder °
verwenden, z.B. 360deg - atan2(3; 4)
oder 360° - atan2(3; 4)
. Ein Ausdruck, der ohne Einheiten angegeben ist und aus Kompatibilitätsgründen in Grad oder Bogenmaß umgewandelt werden muss, wird entsprechend mit 1deg
, 1°
oder 1rad
multipliziert, z.B. (360 - X) * 1deg
; (360 - X) * 1°
; (0.5 + pi / 2) * 1rad
.
Funktion | Beschreibung | Eingabebereich |
---|---|---|
acos(x)
|
arccos | -1 <= x <= 1 |
asin(x)
|
arcsin | -1 <= x <= 1 |
atan(x)
|
arctan, Bereich des Rückgabewertes: -90° < Wert < 90° | alle |
atan2(y; x)
|
arctan2 von y/x unter Berücksichtigung des Quadranten, Bereich des Rückgabewertes: -180° < Wert <= 180° | alle, die ungültige Eingabe x = y = 0 gibt 0 zurück |
cos(x)
|
cos | alle |
cosh(x)
|
cosh | alle |
sin(x)
|
sin | alle |
sinh(x)
|
sinh | alle |
tan(x)
|
tan | alle, außer x = n*90 mit n = odd integer (ungerade Ganzzahl) |
tanh(x)
|
tanh | alle |
hypot(x; y)
|
Pythagoreische Addition (Hypotenuse), z.B. hypot(4; 3) = 5. | x und y >= 0 |
cath(x; y)
|
Die gegebene Hypotenuse und eine Seite ergibt die andere Seite eines Dreiecks (Kathete), z.B. cath(5; 3) = 4. | x >= y >= 0 |
Exponential- und Logarithmusfunktionen
Funktion | Beschreibung | Eingabebereich |
---|---|---|
exp(x) | Exponentialfunktion | alle |
log(x) | Natürlicher Logarithmus | x > 0 |
log10(x) | Dekadischer Logarithmus | x > 0 |
pow(x, y) | Potenz (Mathematik) | alle |
sqrt(x) | Quadratwurzel | x >= 0 |
cbrt(x) eingeführt mit Version 0.21 | Kubikwurzel | x >= 0 |
Rundung, Trunkierung und Modulo
Funktion | Beschreibung | Eingabebereich |
---|---|---|
abs(x)
|
Betragsfunktion | alle |
ceil(x)
|
Aufrundungsfunktion, kleinster ganzzahliger Wert größer oder gleich x | alle |
floor(x)
|
Abrundungsfunktion, größter ganzzahliger Wert kleiner oder gleich x | alle |
mod(x, y)
|
Division mit Rest nach einer Division x durch y, das Vorzeichen des Ergebnisses ist das des Dividenden. | alle, außer y = 0 |
round(x)
|
Rundung auf die nächste Ganzzahl | alle |
trunc(x)
|
Trunkierung auf die nächste Ganzzahl in Richtung Null (Nachkommastellen entfernen). | alle |
Statistische / Aggregatfunktionen
Aggregatfunktion verwenden ein oder mehrere Argumente.
Einzelne Argumente für Aggregatfunktionen können aus Zellbereichen bestehen. Ein Zellbereich wird durch zwei Zellbezüge ausgedrückt, die durch einen Doppelpunkt :
getrennt sind, zum Beispiel Durchschnitt(B1:B8)
oder Summe(A1:A4; B1:B4)
.
Die Zellbezüge können auch Zell Aliase verwenden, zum Beispiel Durchschnitt(StartTemp:EndTemp)
.
Diese Aggregatfunktionen werden unterstützt:
Funktion | Beschreibung | Eingabebereich |
---|---|---|
average(a; b; c; ...)
|
Arithmetisches Mittel der Werte der Argumente, dasselbe, wie sum(a; b; c; ...) / count(a; b; c; ...) | alle |
count(a; b; c; ...)
|
Zählen der Argumente, üblicherweise für Zellbereiche genutzt | alle |
max(a; b; c; ...)
|
Extremwert (Maximum)-Werte der Argumente | alle |
min(a; b; c; ...)
|
Minimum (Minimum)-Werten der Argumente | alle |
stddev(a; b; c; ...)
|
Varianz (Stochastik) der Werte der Argumente | alle |
sum(a; b; c; ...)
|
Summe der Werte der Argumente, üblicherweise für Zellbereiche genutzt | alle |
Zeichenkettenhandhabung
Zeichenkettenerkennung
Zeichenketten werden in Ausdrücken erkannt, indem sie in doppelte öffnende/schließende Winkel eingeschlossen werden (so wie Beschriftungen).
Im folgenden Beispiel wird "TEXT" als eine Zeichenkette erkannt: <<TEXT>>
Zeichenkettenverkettung
Zeichenketten können durch das '+'-Zeichen aneinandergehängt werden.
Das folgende Beispiel <<MY>>+<<TEXT>>
wird verbunden zu "MYTEXT".
Umwandlung in Zeichenketten
Numerische Werte können mit der Funktion str
in Zeichenketten gewandelt werden:
str(Box.Length.Value)
Zeichenkettenformatierung
Zeichenkettenformatierung wird unterstützt durch die (alte) %-Form von Python.
Alle %-Spezifizierer wie in der (engl.) Python documentation definiert.
Hat man bspw. einen mit den Vorgabewerten erstellten Würfel namens 'Box' (FreeCAD-Standardbezeichnung) mit 10mm-Kantenlänge, wird der folgende Ausdruck <<Würfellänge: %s>> % Box.Length
erweitert zu "Würfellänge: 10.0 mm"
Für mehr als einen %-Spezifizierer verwendet man folgende Syntax: <<Würfellänge ist %s und Würfelbreite ist %s>> % tuple(Box.Length; Box.Width)
. Oder man verwendet die Verkettung: <<Würfellänge ist %s>> % Box.Length + << und Länge ist %s>> % Box.Width
. Beide ergeben zusammen "Würfellänge ist 10.0 mm und Breite ist 10.0 mm".
Eine FreeCAD-Beispieldatei, die Zeichenkettenformatierung zeigt, ist unter im Forum verfügbar (engl.)
Funktionen zur Objekterstellung
Die folgenden Objekte können in Ausdrücken durch die folgenden Funktionen erstellt werden:
Type | Function | Description |
---|---|---|
Tuple
|
tuple(a; b; ...)
|
Example: tuple(2; 1; 2)
|
List
|
list(a; b; ...)
|
Example: list(2; 1; 2)
|
Vector
|
vector(x; y; z)
|
Create a vector using three unit-less or Length unit values.
Example: |
create(<<vector>>; x; y; z)
| ||
Matrix
|
matrix( a11; a12; a13; a14; a21; a22; a23; a24; a31; a32; a33; a34; a41; a42; a43; a44 ) |
Create a 4x4 matrix in row-major order:
A minimum of 1 argument can be supplied such as Example: |
create(<<matrix>>; a11; a12; ...; a44)
| ||
Rotation
|
rotation(axis; angle)
|
Create a Rotation by specifying its axis (Vector ) and angle (Angle unit or unit-less), or three Euler angles α , β , γ .
Examples:
|
rotation(α; β; γ)
| ||
create(<<rotation>>; axis; angle)
| ||
create(<<rotation>>; α; β; γ)
| ||
Placement
|
placement(base; rotation)
|
Create a Placement with various parameters, including:
Examples:
|
placement(base; rotation; center)
| ||
placement(base; axis; angle)
| ||
placement(matrix)
| ||
create(<<placement>>; ...)
|
Vektorfunktionen
Functions: introduced in version 1.0.
Function / Operator | Description |
---|---|
v1 + v2
|
Add two vectors. |
v1 - v2
|
Subtract two vectors. |
v * s
|
Uniformly scale a vector by s .
|
vangle(v1; v2)
|
Angle between two vectors in degrees. |
vcross(v1; v2)
|
Cross product of two vectors . |
v1 * v2
|
Dot product of two vectors . |
vdot(v1; v2)
| |
vlinedist(v1; v2; v3)
|
Distance between vector v1 and a line through v2 in direction v3 .
|
vlinesegdist(v1; v2; v3)
|
Distance between vector v1 and the closest point on a line segment from v2 to v3 .
|
vlineproj(v1; v2; v3)
|
Project vector v1 on a line through v2 in direction v3 .
|
vnormalize(v)
|
Normalize a vector to a unit vector. |
vplanedist(v1)
|
Distance between vector v1 and a plane defined by a point v2 and a normal v3 .
|
vplaneproj(v1)
|
Project vector v1 on a plane defined by a point v2 and a normal v3 .
|
vscale(v; sx; sy; sz)
|
Non-uniformly scale a vector by sx in the X direction, sy in the Y direction, and sz in the Z direction.
|
vscalex(v; sx)
| |
vscaley(v; sy)
| |
vscalez(v; sz)
|
Matrixfunktionen
Rotation
and Placement
can each be represented by a Matrix
. The following functions all take in a Matrix
, Rotation
, or Placement
as their first parameter denoted in the table below by m
. The type of the returned object is the same as the object supplied in the first argument except when using mtranslate
on a Rotation
, in which case a Placement
will be returned.
Function | Description |
---|---|
minvert(m)
|
Calculate the Inverse matrix. |
mrotate(m; rotation)
|
Rotate by either:
|
mrotate(m; axis; angle)
| |
mrotate(m; α; β; γ)
| |
mrotatex(m; angle)
|
Rotate around the X axis. |
mrotatey(m; angle)
|
Rotate around the Y axis. |
mrotatez(m; angle)
|
Rotate around the Z axis. |
mtranslate(m; vector)
|
Translate by a vector (Vector ) or X, Y, Z values. If a Rotation is translated, the returned object is a Placement .
|
mtranslate(m; x; y; z)
| |
mscale(m; vector)
|
Scale by a vector (Vector ) or X, Y, Z values.
|
mscale(m; x; y; z)
|
Bedingte Ausdrücke
Bedingte Ausdrücke haben die Form Bedingung ? ResultatWahr : ResultatFalsch
.
Die Bedingung ist definiert als ein Ausdruck, der entweder zu 0
(falsch/false) oder Nicht-Null (wahr/true) ausgewertet wird.
Die folgenden Vergleichsoperatoren sind definiert:
Einheit | Beschreibung |
---|---|
== | gleich |
!= | ungleich |
> | größer als |
< | kleiner als |
>= | größer oder gleich |
<= | kleiner oder gleich |
Einheiten
Einheiten können direkt in Ausdrücken verwendet werden. Der Analysator (parser) verbindet sie mit dem vorherigen Wert. So ist 2mm
oder 2 mm
gültig, während mm
ungültig ist, weil es keinen vorhergehenden Wert gibt.
Alle Werte müssen eine Einheit haben. Daher müssen Werte auch in Kalkulationstabellen im allgemeinen eine Einheit haben.
In einigen Fällen funktioniert es auch ohne Einheit, z.B. wenn Sie in Zelle B1 der Kalkulationstabelle z.B. nur die Zahl 1.5
haben und sich für eine Blockhöhe darauf beziehen. Dies funktioniert nur, weil die Blockhöhe die Einheit mm
vordefiniert und die verwendet wird, wenn keine Einheit angegeben ist. Es schlägt jedoch fehl, wenn Sie für die Blockhöhe z.B. Sketch1.Constraints.Breite - Kalkulationstabelle.B1
verwenden, weil Sketch1.Constraints.Breite
eine Einheit hat und Kalkulationstabelle.B1
keine Einheit.
Einheiten mit Exponenten können direkt eingegeben werden. So wird z.B. mm^3
als mm³ erkannt und m^3
wird als m³ erkannt.
Wenn eine Variable mit dem Namen einer Einheit verwendet wird, muss die Variable in << >>
gesetzt werden. Das verhindert, dass die Variable als Einheit erkannt wird. Das Maß Sketch.Constraints.A
würde z.B. als Einheit Ampere erkannt werden. Daher muss der Ausdruck als Sketch.Constraints.<<A>>
geschrieben werden.
Die folgenden Einheiten werden vom Analysator für Ausdrücke erkannt:
Stoffmenge
Einheit | Beschreibung |
---|---|
mmol | Millimol |
mol | Mol |
Winkel
Einheit | Beschreibung |
---|---|
° | Grad (Winkel); Alternative zur Einheit deg |
deg | Degree; Alternative zur Einheit ° |
rad | Radian |
gon | Gradian |
S | Winkelsekunde; Alternative zur Einheit " |
″ | Winkelsekunde; Alternative zur Einheit S |
M | Winkelminute; Alternative zur Einheit ' |
′ | Winkelminute; Alternative zur Einheit M |
Strom
Einheit | Beschreibung |
---|---|
mA | Milliampere |
A | Ampere |
kA | Kiloampere |
MA | Megaampere |
Elektrische Kapazität
Einheit | Beschreibung |
---|---|
pF | Picofarad |
nF | Nanofarad |
uF | Mikrofarad; Alternative zur Einheit µF |
µF | Mikrofarad; Alternative zur Einheit uF |
mF | Millifarad |
F | Farad; 1 F = 1 s^4·A^2/m^2/kg |
Elektrische Ladung
Einheit | Beschreibung |
---|---|
C | Coulomb; 1 C = 1 A*s |
Elektrischer Leitwert
Einheit | Beschreibung |
---|---|
uS | Mikrosiemens; alternative to the unit µS |
µS | Mikrosiemens; alternative to the unit uS |
mS | Millisiemens |
S | Siemens; 1 S = 1 s^3·A^2/kg/m^2 |
kS | KiloSiemens |
MS | MegaSiemens |
Elektrische Induktivität
Einheit | Beschreibung |
---|---|
nH | Nanohenry (Einheit) |
uH | Mikrohenry (Einheit); Alternative zur Einheit µH |
µH | Mikrohenry (Einheit); Alternative zur Einheit uH |
mH | Millihenry (Einheit) |
H | Henry (Einheit); 1 H = 1 kg·m^2/s^2/A^2 |
Elektrische Spannung
Elektrisches Spannung:
Einheit | Beschreibung |
---|---|
mV | Millivolt |
V | Volt |
kV | Kilovolt |
Elektrischer Widerstand
Elektrischer Widerstand:
Einheit | Beschreibung |
---|---|
Ohm | Ohm; 1 Ohm = 1 kg·m^2/s^3/A^2 |
kOhm | Kiloohm |
MOhm | Megaohm |
Energie/Arbeit
Einheit | Beschreibung |
---|---|
mJ | Millijoule |
J | Joule |
kJ | Kilojoule |
eV | elektron(en)volt; 1 eV = 1.602176634e-19 J |
keV | Kiloelektron(en)volt |
MeV | Megaelektron(en)volt |
kWh | Kilowattstunde; 1 kWh = 3.6e6 J |
Ws | Wattsekunde; Alternative zur Einheit Joule |
VAs | Voltamperesekunde; Alternative zur Einheit Joule |
CV | Coulombvolt; Alternative zur Einheit Joule |
cal | Kalorie; 1 cal = 4.184 J |
kcal | Kilokalorie |
Kraft
Einheit | Beschreibung |
---|---|
mN | Millinewton |
N | Newton |
kN | Kilonewton |
MN | Meganewton |
lbf | Pound-force |
Länge
Einheit | Beschreibung |
---|---|
nm | Nanometer |
um | Mikrometer; Alternative zur Einheit µm |
µm | Mikrometer; Alternative zur Einheit um |
mm | Millimeter |
cm | Zentimeter |
dm | Dezimeter |
m | Meter |
km | Kilometer |
mil | Thou (Abk. f. Thousandth of an inch); Alternative zur Einheit thou |
thou | Thou (Abk. f. Thousandth of an inch); Alternative zur Einheit mil |
in | Zoll (Einheit), in = inch, Alternative zur Einheit " |
" | Inch; Alternative zur Einheit in |
ft | Fuß (Einheit); Alternative zur Einheit ' |
' | Fuß (Einheit); Alternative zur Einheit ft |
yd | Yard |
mi | Meile |
Lichtstärke
Einheit | Beschreibung |
---|---|
cd | Candela |
Magnetischer Fluss
Einheit | Beschreibung |
---|---|
Wb | Weber (Einheit); 1 Wb = 1 kg*m^2/s^2/A ' |
Magnetische Flussdichte
Einheit | Beschreibung |
---|---|
G | Gauß (Einheit); 1 G = 1 e-4 T |
T | Tesla (Einheit); 1 T = 1 kg/s^2/A |
Masse
Einheit | Beschreibung |
---|---|
ug | Mikrogramm; Alternative zur Einheit µg |
µg | Mikrogramm; Alternative zur Einheit ug |
mg | Milligramm |
g | Gramm |
kg | Kilogramm |
t | Tonne (Einheit) |
oz | Unze |
lb | Pfund; Alternative zur Einheit lbm |
lbm | Pfund; Alternative zur Einheit lb |
st | Stone (Einheit) |
cwt | Hundredweight |
Leistung
Einheit | Beschreibung |
---|---|
W | Watt |
kW | Kilowatt |
Druck
Einheit | Beschreibung |
---|---|
Pa | Pascal (Einheit) |
kPa | Kilo-Pascal (Einheit) |
MPa | Mega-Pascal (Einheit) |
GPa | Giga-Pascal (Einheit) |
uTorr | Mikro-Torr; Alternative zu Einheit µTorr |
µTorr | Mikro-Torr; Alternative zu Einheit uTorr |
mTorr | Milli-Torr |
Torr | Torr; 1 Torr = 133.32 Pa |
psi | Pound-force per square inch; 1 psi = 6.895 kPa |
ksi | Kilo-Pound-force per square inch |
Temperatur
Einheit | Beschreibung |
---|---|
uK | Mikrokelvin; Alternative zur Einheit µK |
µK | Mikrokelvin; Alternative zur Einheit uK |
mK | Millikelvin |
K | Kelvin |
Zeit
Einheit | Beschreibung |
---|---|
s | Secunde |
min | Minute |
h | Stunde |
Hz (1/s) | Hertz |
kHz | Kilohertz, |
MHz | Megahertz |
GHz | Gigahertz |
THz | Terahertz |
Volumen
Einheit | Beschreibung |
---|---|
ml | Milliliter |
l | Liter |
cft | Kubikfuß |
Spezielle nichtmetrische Einheiten
Einheit | Beschreibung |
---|---|
mph | Meilen pro Stunde |
sqft | Quadratfuß |
Nicht unterstützte Einheiten
Die folgenden häufig verwendeten Einheiten werden noch nicht unterstützt, für einige gibt es aber Alternativen:
Einheit | Beschreibung | Alternative |
---|---|---|
°C | Grad Celsius | [°C] + 273.15 K |
°F | Grad Fahrenheit; | ([°F] + 459.67) × 5/9 |
u | Atomare Masseneinheit; Alternative zur Einheit Da (Dalton) = | 1.66053906660e-27 kg |
Da | Dalton; Alternative zur Einheit u | 1.66053906660e-27 kg |
sr | Steradiant | nicht direkt |
lm | Lumen (Einheit) | nicht direkt |
lx | Lux (Einheit) | nicht direkt |
px | Pixel | nicht direkt |
Ungültige Zeichen und Namen
Das Ausdrucks-Feature ist sehr leistungsfähig. Um das zu ermöglichen gibt es ein paar Einschränkungen bei ein paar Zeichen. Als Abhilfe gibt es in FreeCAD die Möglichkeit anstatt der Objektnamen sog. Bezeichner ('labels') zu verwenden und sich auf diese zu beziehen.
In Fällen, in denen du keine Beschriftung verwenden kannst, wie z. B. der Name einer Skizzenbeschränkung, musst du dir bewusst sein, welche Zeichen nicht erlaubt sind.
Bezeichner
Für Bezeichner gibt es keine ungültigen Zeichen, jedoch müssen einige Zeichen maskiert werden:
Zeichen | Beschreibung |
---|---|
' , \ , "
|
Müssen durch das Voranstellen von \ maskiert werden.
|
Zum Beispiel muss der Bezeichner Skizze\002
als <<Skizze\002>>
referenziert werden.
Namen
Namen von Objekten wie Maße, Skizzen, usw. dürfen folgende Zeichen oder Zeichenfolgen nicht enthalten. Anderenfalls ist der Namen ungültig.
Zeichen / Zeichenfolgen | Beschreibung |
---|---|
+, -, *, /, ^, _, <, >, (, ), {, }, [, ], ., ,, = | Zeichen die mathematische Operatoren oder mathematische Konstruktionen sind. |
A, kA, mA, MA, J, K, ' , ft , °, und viele andere! | Zeichen und Zeichenfolgen, die Einheiten sind (siehe Abschnitt Einheiten ). |
#, !, ?, §, $, %, &, :, ;, \, |, ~, ∆, ¿, und viele andere! | Zeichen, die als Platzhalter verwendet werden oder die Funktionen auslösen. |
pi, e | Mathematische Konstanten |
´, `, ' , " | Akzente |
Leerzeichen (Space) | Ein Leerzeichen definiert das Ende eines Namens und kann daher nicht verwendet werden. |
Beispielsweise ist folgender Name gültig: <<Sketch>>.Constraints.T2üßµ@
.
Hingegen sind diese ungültige Namen: <<Sketch>>.Constraints.test\result_2
(\r bedeutet "Wagenrücklauf (carriage return)") oder<<Sketch>>.Constraints.mol (mol ist eine Einheit).
Da kürzere Namen (vor allem, wenn sie nur ein oder zwei Zeichen haben) leicht zu ungültigen Namen führen können, sollte die Verwendung längerer Namen in Betracht gezogen und/oder eine geeignete Namenskonvention festgelegt werden.
Zell Aliasse
Siehe Spreadsheet Alias-Namen festlegen.
Referenzen auf CAD Daten
Es ist möglich, Daten aus dem Modell selbst in einem Ausdruck zu verwenden. Um auf eine Eigenschaft zu verweisen, wird Objekt-Name.property
oder <<Objekt-Benennung>>.property
. Benennungen (Label) müssen in <<
und >>
eingeschlossen werden. Sollen Benennungen verwendet werden, müssen sie eindeutig sein.
Alle weiteren Beispiele referenzieren ein Objekt über seinen Namen, aber seine Benennung kann ebenfalls verwendet werden.
If the property is a compound of fields, the individual fields can be accessed as object_name.property.field
.
Um auf Listenobjekte zu verweisen, wird ObjektName.list[list_index]
verwendet.
Soll beispielsweise auf eine Randbedingung in einer Skizze verwiesen werden, wird Skizze.Constraints[16]
verwendet. Ist eine Skizze im Bearbeitungsmodus geöffnetbefindest, kann man den Namen weglassen und einfach Constraints[16]
verwenden. Man beachte, dass der Index mit 0 beginnt, daher muss die 17. Randbedingung als Constraints[16]
referenziert werden.
Um auf das Objekt selbst zu referenziertem wird die Pseudo-Eigenschaft _self
verwendet: Objekt-Name._self
.
Die folgende Tabelle zeigt einige weitere Beispiele:
CAD-Daten | Aufruf im Ausdruck | Ergebnis |
---|---|---|
Länge eines Part Würfels | Box.Length
|
Länge mit Einheit (mm) |
Volumen des Würfels | Box.Shape.Volume
|
Volumen in mm³ ohne Einheit |
Formart des Würfels | Box.Shape.ShapeType
|
Zeichenkette (String): Solid |
Bezeichnung des Würfels | Box.Label
|
Zeichenkette (String): Label |
X-Koordinate des Schwerpunktes des Würfels | Box.Shape.CenterOfMass.x
|
X-Koordinate in mm ohne Einheit |
X-Koordinate der Positionierung des Würfels | Box.Placement.Base.x
|
X-Koordinate mit Einheit (mm) |
X-Komponente der Rotationsachsen der Positionierung des Würfels | Box.Placement.Rotation.Axis.x
|
X-Komponente des Einheitsvektors in mm ohne Einheit |
Rotationswinkel der Positionierung des Würfels | Box.Placement.Rotation.Angle
|
Rotationswinkel mit Einheit (° = Grad = deg) |
Das ganze Würfel-Objekt | Box._self
|
Objekt der Art <Part::PartFeature> |
Wert einer Randbedingung in einer Skizze | Constraints.Width
|
Zahlenwert der benannten Randbedingung Width (Breite) in der Skizze, wenn der Ausdruck in der Skizze selbst verwendet wird.
|
Wert einer Randbedingung in einer Skizze | MySketch.Constraints.Width
|
Zahlenwert der benannten Randbedingung Width in der Skizze MySketch , wenn der Ausdruck außerhalb der Skizze verwendet wird.
|
Wert eines Alias einer Kalkulationstabelle | Spreadsheet.Depth
|
Wert des Alias Depth (Tiefe) in der Kalkulationstabelle Spreadsheet
|
Wert einer lokalen Eigenschaft eines Objekts | Length
|
Wert der Daten-EigenschaftLength (Länge) z.B. in einem Pad-Objekt, wenn der Ausdruck z.B. in Daten-EigenschaftLength2 im selben Objekt verwendet wird. |
Cyclic dependencies
FreeCAD checks dependencies based on the relationship between document objects, not properties. This means that you cannot provide data to an object and query that same object for results. For example, even though there are no cyclic dependencies when the properties themselves are considered, you may not have an object which gets its dimensions from a spreadsheet and then display the volume of that object in the same spreadsheet. You have to use two spreadsheets, one to drive your model and the other for reporting.
As a workaround it is possible to display a cell range from the second spreadsheet in the first (or vice versa) by creating a cell binding with the Hide dependency of binding option.
Another way to workaround cyclic dependencies is to hide the reference by using the href
or hiddenref
function for individual expressions, for example: href(Box.Length)
.
Please note that both mentioned workarounds should be used with caution, and that they do not work if the properties that are reported depend on dimensions that are driven from the same spreadsheet.
Dokumentweit gültige globale Variablen
In FreeCAD gibt es zur Zeit kein Konzept für globale Variablen. Stattdessen können beliebige Variablen mit Hilfe der Arbeitsbereich Kalkulationstabelle als Zellen in einer Kalkulationstabelle definiert werden und dann mit Hilfe der Alias Eigenschaft für die Zelle (Rechtsklick auf die Zelle) einen Namen erhalten. Dann kann von jedem Ausdruck aus auf sie zugegriffen werden, wie auf jede andere Objekteigenschaft auch.
Dokumentenübergreifende Verweise
Es ist (mit Begrenzungen) möglich, eine Eigenschaft eines Objekts in deinem aktuellen Dokument (".FCstd" Datei) durch Verwendung eines Ausdrucks zu definieren, um auf eine Eigenschaft eines Objekts in einem anderen Dokument zu verweisen (".FCstd" file). Zum Beispiel kann eine Zelle in einer Kalkulationstabelle oder die Daten-EigenschaftLänge eines Formteil Würfels usw. in einem Dokument durch einen Ausdruck definiert werden, der auf den X Platzierungswert oder eine andere Eigenschaft eines Objekts in einem anderen Dokument verweist.
Der Name des Dokuments wird verwendet, um von einem anderen Dokument aus darauf zu referenzieren. Wenn ein Dokument zum ersten Mal gespeichert wird, muss dem Dokument ein Name gegeben werden. Dies ist normalerweise ein anderer Name als die Vorgabe "Unbenannt1". Um zu verhindern, dass Verknüpfungen beim Speichern des Hauptdokumentes verloren gehen, wenn dieses dabei einen anderen Namen bekommt, sollte das Hauptdokument zuerst mit einer Kalkulationstabelle erstellt werden. Danach kann der Inhalt des Dokuments geändert und das Dokument gespeichert werden, aber es darf nicht umbenannt werden.
Sobald das Mutterdokument mit der Kalkulationstabelle erstellt und gespeichert (benannt) ist, können abhängige Dokumente erstellt werden. Angenommen, du nennst das Mutterdokument master
, die Kalkulationstabelle modelConstants
und gibst einer Zelle einen Alias-Namen Length
, dann kannst du auf den Wert zugreifen als:
master#modelConstants.Length
Man beachte, dass das Hauptdokument geladen sein muss, damit die Werte des Hauptdokuments für das abhängige Dokument verfügbar sind.
Natürlich liegt es bei dir, die zugehörigen Dokumente später zu laden, wenn du etwas ändern willst.
Bekannte Probleme / Verbleibende Aufgaben
- FreeCAD hat bisher keinen eingebauten Ausdrucksmanager, der alle Ausdrücke in einem Dokument auflistet und sie erstellt, löscht, abfragt, etc. Aber es ist ein Addon verfügbar: fcxref expression manager.
- Offene Fehler/Tickets für die Ausdrücke (Expressions) können hier gefunden werden: GitHub.
- FreeCAD scripting: Python, Introduction to Python, Python scripting tutorial, FreeCAD Scripting Basics
- Modules: Builtin modules, Units, Quantity
- Workbenches: Workbench creation, Gui Commands, Commands, Installing more workbenches
- Meshes and Parts: Mesh Scripting, Topological data scripting, Mesh to Part, PythonOCC
- Parametric objects: Scripted objects, Viewproviders (Custom icon in tree view)
- Scenegraph: Coin (Inventor) scenegraph, Pivy
- Graphical interface: Interface creation, Interface creation completely in Python (1, 2, 3, 4, 5), PySide, PySide examples beginner, intermediate, advanced
- Macros: Macros, How to install macros
- Embedding: Embedding FreeCAD, Embedding FreeCADGui
- Other: Expressions, Code snippets, Line drawing function, FreeCAD vector math library (deprecated)
- Hubs: User hub, Power users hub, Developer hub