Draft BezCurve/de: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Updating to match new version of source page)
Line 24: Line 24:
==Beschreibung==
==Beschreibung==


<div class="mw-translate-fuzzy">
Das BezCurve-Werkzeug erstellt eine [https://de.wikipedia.org/wiki/B%C3%A9zierkurve Bézierkurve] (oder eine stückweise Bézierkurve) aus einigen Punkten in der aktuellen [[Draft SelectPlane/de|Arbeitsebene]]. Dabei werden die vorher im [[Draft Tray/de|Draft Tray]] festgelegte [[Draft Linestyle/de|Linienbreite und -farbe]] verwendet.
Das BezCurve-Werkzeug erstellt eine [https://de.wikipedia.org/wiki/B%C3%A9zierkurve Bézierkurve] (oder eine stückweise Bézierkurve) aus einigen Punkten in der aktuellen [[Draft SelectPlane/de|Arbeitsebene]]. Dabei werden die vorher im [[Draft Tray/de|Draft Tray]] festgelegte [[Draft Linestyle/de|Linienbreite und -farbe]] verwendet.
</div>


The BezCurve tool curve uses {{Emphasis|control points}} to define the direction of the curve; on the other hand the [[Draft BSpline]] tool specifies the exact points through which the curve will go. To create exact circular or elliptical curves, use [[Draft Arc]] and [[Draft Ellipse]].
The BezCurve tool curve uses {{Emphasis|control points}} to define the direction of the curve; on the other hand the [[Draft BSpline|Draft BSpline]] tool specifies the exact points through which the curve will go. To create exact circular or elliptical curves, use [[Draft Arc|Draft Arc]] and [[Draft Ellipse|Draft Ellipse]].


[[Image:Draft_BezCurve_Example.png|400px]]
[[Image:Draft_BezCurve_Example.png|400px]]
Line 33: Line 35:
==Anwendung==
==Anwendung==


<div class="mw-translate-fuzzy">
==Anwendung==
==Anwendung==
# Drücke die Schaltfläche {{Button|[[Image:Draft BezCurve.png|16px]] [[Draft BezCurve]]}} oder drücke {{KEY|B}}, dann {{KEY|Z}}
# Drücke die Schaltfläche {{Button|[[Image:Draft BezCurve.png|16px]] [[Draft BezCurve]]}} oder drücke {{KEY|B}}, dann {{KEY|Z}}
Line 38: Line 41:
# Klicke weitere Punkte in der 3D-Ansicht oder tippe eine [[Draft_Coordinates/de|Koordinate]] und drücke die Schaltfläche {{Button|[[Image:Draft_AddPoint.svg|16px]] [[Draft_AddPoint/de|Punkt hinzufügen]]}}.
# Klicke weitere Punkte in der 3D-Ansicht oder tippe eine [[Draft_Coordinates/de|Koordinate]] und drücke die Schaltfläche {{Button|[[Image:Draft_AddPoint.svg|16px]] [[Draft_AddPoint/de|Punkt hinzufügen]]}}.
# Drücke {{KEY|Esc}} oder die Schaltfläche {{Button|Schließen}} oder doppelklicke den letzten Punkt zum Abschließen der Änderung.
# Drücke {{KEY|Esc}} oder die Schaltfläche {{Button|Schließen}} oder doppelklicke den letzten Punkt zum Abschließen der Änderung.
</div>


Das Objekt wird erstellt als eine einzelne Bézierkurve des Grades (Anzahl Punkte - 1). Nach der Erstellung kann dies mit dem [[Property/de|Eigenschaftseditor]] in eine stückweise Bézierkurve eines vorgegebenen Grades geändert werden.
Das Objekt wird erstellt als eine einzelne Bézierkurve des Grades (Anzahl Punkte - 1). Nach der Erstellung kann dies mit dem [[Property/de|Eigenschaftseditor]] in eine stückweise Bézierkurve eines vorgegebenen Grades geändert werden.


<div class="mw-translate-fuzzy">
Die Kurve kann nach doppelklicken des Elements in der Baumansicht oder nach drücken der Schaltfläche {{Button|[[Image:Draft Edit.png|16px]] [[Draft Edit/de|Bearbeiten]]}} geändert werden. Dann kannst Du die Punkte an eine neue Position verschieben oder {{Button|[[Image:Draft_AddPoint.svg|16px]] [[Draft_AddPoint/de|Punkt hinzufügen]]}} oder {{Button|[[Image:Draft_DelPoint.svg|16px]] [[Draft_DelPoint/de|Punkt entfernen]]}} und dann den Linienzug anklicken, um Punkte hinzuzufügen oder zu entfernen. Du kannst auch den Tp der Beschränkung für jeden Punkt ändern.
Die Kurve kann nach doppelklicken des Elements in der Baumansicht oder nach drücken der Schaltfläche {{Button|[[Image:Draft Edit.png|16px]] [[Draft Edit/de|Bearbeiten]]}} geändert werden. Dann kannst Du die Punkte an eine neue Position verschieben oder {{Button|[[Image:Draft_AddPoint.svg|16px]] [[Draft_AddPoint/de|Punkt hinzufügen]]}} oder {{Button|[[Image:Draft_DelPoint.svg|16px]] [[Draft_DelPoint/de|Punkt entfernen]]}} und dann den Linienzug anklicken, um Punkte hinzuzufügen oder zu entfernen. Du kannst auch den Tp der Beschränkung für jeden Punkt ändern.
</div>


=== Knotenbeschränkungen ===
=== Knotenbeschränkungen ===
Line 92: Line 98:
* {{PropertyView|Arrow Type}}: specifies the type of symbol displayed at the end of the curve, which can be dot, circle, arrow, and tick.
* {{PropertyView|Arrow Type}}: specifies the type of symbol displayed at the end of the curve, which can be dot, circle, arrow, and tick.
* {{PropertyView|End Arrow}}: specifies whether to show a symbol at the last point of the curve, so it can be used as an annotation line.
* {{PropertyView|End Arrow}}: specifies whether to show a symbol at the last point of the curve, so it can be used as an annotation line.
* {{PropertyView|Pattern}}: specifies a [[Draft Pattern]] with which to fill the face of the closed curve. This property only works if {{PropertyData|Make Face}} is {{TRUE}}, and if {{PropertyView|Display Mode}} is "Flat Lines".
* {{PropertyView|Pattern}}: specifies a [[Draft Pattern|Draft Pattern]] with which to fill the face of the closed curve. This property only works if {{PropertyData|Make Face}} is {{TRUE}}, and if {{PropertyView|Display Mode}} is "Flat Lines".
* {{PropertyView|Pattern Size}}: specifies the size of the [[Draft Pattern]].
* {{PropertyView|Pattern Size}}: specifies the size of the [[Draft Pattern|Draft Pattern]].


<div class="mw-translate-fuzzy">
==Scripting==
==Scripting==
{{Emphasis|Siehe auch:}} [[Arch API/de|Arch API]] und [[FreeCAD Scripting Basics/de|FreeCAD Scripting Basics]].
{{Emphasis|Siehe auch:}} [[Arch API/de|Arch API]] und [[FreeCAD Scripting Basics/de|FreeCAD Scripting Basics]].
</div>


<div class="mw-translate-fuzzy">
Das BezCurve-Werkzeug kann in [[macros/de|Makros]] ebenso wie aus der [[Python/de|Python]]-Konsole heraus mit folgender Funktion angesprochen werden:
Das BezCurve-Werkzeug kann in [[macros/de|Makros]] ebenso wie aus der [[Python/de|Python]]-Konsole heraus mit folgender Funktion angesprochen werden:
</div>
{{Code|code=
{{Code|code=
BezCurve = makeBezCurve(pointslist, closed=False, placement=None, face=None, support=None, degree=None)
BezCurve = makeBezCurve(pointslist, closed=False, placement=None, face=None, support=None, degree=None)

Revision as of 09:36, 13 September 2019

Draft BezCurve

Menüeintrag
Entwurf → Bézierkurve
Arbeitsbereich
Draft, Arch
Standardtastenkürzel
B Z
Eingeführt in Version
0.14
Siehe auch
Linienzug, BSpline

Beschreibung

Das BezCurve-Werkzeug erstellt eine Bézierkurve (oder eine stückweise Bézierkurve) aus einigen Punkten in der aktuellen Arbeitsebene. Dabei werden die vorher im Draft Tray festgelegte Linienbreite und -farbe verwendet.

The BezCurve tool curve uses control points to define the direction of the curve; on the other hand the Draft BSpline tool specifies the exact points through which the curve will go. To create exact circular or elliptical curves, use Draft Arc and Draft Ellipse.

Bézierkurve definiert durch mehrere Kontrollpunkte

Anwendung

Anwendung

  1. Drücke die Schaltfläche Draft BezCurve oder drücke B, dann Z
  2. Klicke einen ersten Punkt in der 3D-Ansicht oder tippe eine Koordinate und drücke die Schaltfläche Punkt hinzufügen.
  3. Klicke weitere Punkte in der 3D-Ansicht oder tippe eine Koordinate und drücke die Schaltfläche Punkt hinzufügen.
  4. Drücke Esc oder die Schaltfläche Schließen oder doppelklicke den letzten Punkt zum Abschließen der Änderung.

Das Objekt wird erstellt als eine einzelne Bézierkurve des Grades (Anzahl Punkte - 1). Nach der Erstellung kann dies mit dem Eigenschaftseditor in eine stückweise Bézierkurve eines vorgegebenen Grades geändert werden.

Die Kurve kann nach doppelklicken des Elements in der Baumansicht oder nach drücken der Schaltfläche Bearbeiten geändert werden. Dann kannst Du die Punkte an eine neue Position verschieben oder Punkt hinzufügen oder Punkt entfernen und dann den Linienzug anklicken, um Punkte hinzuzufügen oder zu entfernen. Du kannst auch den Tp der Beschränkung für jeden Punkt ändern.

Knotenbeschränkungen

The segment endpoints can be constrained such that adjacent control points are tangent or symmetric to the segments at the endpoint. First, start editing the curve, then pick one of the tools and then pick a point. Click again on the tool to deactivate it, so you can move the point.

  • sharp remove constraints on the points so the curve can have sharp corners.
  • tangent force adjacent control points to be tangent.
  • symmetric force adjacent control points to be tangent and equidistant.

Einschränkungen

  • Die Points-Eigenschaft erscheint bisher nicht in der Eigenschaftenliste.
  • OpenCascade, und dadurch FreeCAD, unterstützt nicht Bézierkurven mit einem Grad > 25. Dies sollte in der Praxis kein Problem sein, weil die meisten Benutzer typischerweise Bézierkurven vom Grad 3 bis 5 verwenden.

Anwendung

  1. Drücke den Draft Bézierkurve-Button oder Taste B und dann Taste Z.
  2. Klicke einen ersten Punkt in der 3D-Ansicht oder gib eine Koordinate ein.
  3. Klicke einen zweiten Punkt in der 3D-Ansicht odergib eine Koordinate ein.
  4. Drücke F oder C oder doppelklicke den letzten Punkt oder klicke auf den ersten Punkt zum Beenden und Schließen der Kurve.

Optionen

  • Drücke F oder den Beenden-Button, um den B-Spline zu beenden (nicht zu schließen)
  • Drücke C oder den Schließen-Button oder klicke den ersten Punkt, um den B-Spline zu schließen, indem ein letztes Segment zwischen dem letzen und ersten Punkt eingefügt wird.
  • Drücke X, Y oder Z nach einem Punkt, um den nächsten Punkt an der angegebenen Achse einzuschränken.
  • Um Koordinaten manuell einzugeben, gib einfach die Ziffern ein, drücke dann Enter zwischen den X-, Y- und Z-Komponenten.
  • Klicke das Ankreuzkästchen zum de/aktivieren des Relativ-Buttons. Wenn der Relativ-Modus aktiviert ist, sind die Koordinaten des nächsten Punkts relativ zum letzten. Wenn nicht, sind sie absolut, bezogen auf den Urspung (0,0,0).
  • Klicke den Gefüllt-Button, damit die Bézierkurve nach dem Schließen mit einer Oberfläche gefüllt wird.
  • Drücke Alt+N oder klicke das Ankreuzkästchen zum de/aktivieren des Nächstes-Buttons. Wenn der Fortsetzungsmodus aktiviert ist, wird das BezCurve-Werkzeug nach Beenden oder Schließen einer Bézierkurve neugestartet, um das Zeichnen einer weiteren Bézierkurve ohne erneutes Drücken des BezCurve-Buttons zu ermöglichen.
  • Drücke Strg während des Zeichnens, um das Einrasten Deines Punkts an der nächsten Einrastposition zu erzwingen, unabhängig vom Abstand.
  • Drücke Shift während des Zeichnens, um Deinen Punkt horizontal oder vertikal in Relation zum Mittelpunkt einzuschränken.
  • Drücke W oder drücke den Radieren-Button, um die exisitierenden Segemente zu entfernenund den Spline vom letzten Punkt zu starten.
  • Drücke Strg+Z oder drücke den Rückgängig-Button, um dem letzten Punkt rückgängig zu machen.
  • Drücke Esc oder den Abbrechen-Button, um den aktuellen BezCurve-Befehl abzubrechen.

Eigenschaften

Data

  • DatenDegree: specifies the degree of the Bezier curve or the individual segments.
  • DatenClosed: specifies if the curve is closed or not. If the curve is initially open, this value is false; setting it to true will draw a segment to close the curve. If the curve is initially closed, this value is true; setting it to false will remove the last segment, and make the curve open.
  • DatenMake Face: specifies if the curve makes a face or not. If it is true a face is created, otherwise only the perimeter is considered part of the object. This property only works if DatenClosed is true.
Note: do not set DatenMake Face to true if the curve intersects itself, as it won't create a proper face.
  • DatenContinuity: (read-only) when the curve is closed, indicates the continuity of the curve [0], or [0,0]. Otherwise it's [].

View

  • AnsichtArrow Size: specifies the size of the symbol displayed at the end of the curve.
  • AnsichtArrow Type: specifies the type of symbol displayed at the end of the curve, which can be dot, circle, arrow, and tick.
  • AnsichtEnd Arrow: specifies whether to show a symbol at the last point of the curve, so it can be used as an annotation line.
  • AnsichtPattern: specifies a Draft Pattern with which to fill the face of the closed curve. This property only works if DatenMake Face is true, and if AnsichtDisplay Mode is "Flat Lines".
  • AnsichtPattern Size: specifies the size of the Draft Pattern.

Scripting

Siehe auch: Arch API und FreeCAD Scripting Basics.

Das BezCurve-Werkzeug kann in Makros ebenso wie aus der Python-Konsole heraus mit folgender Funktion angesprochen werden:

BezCurve = makeBezCurve(pointslist, closed=False, placement=None, face=None, support=None, degree=None)
BezCurve = makeBezCurve(Part.Wire, closed=False, placement=None, face=None, support=None, degree=None)
  • Erstellt ein Bézierkurven-Objekt aus der vorgegebenen Liste von Vektoren. Anstatt einer Punkteliste kannst Du auch einen Linienzug (Part Wire) übergeben.

Beispiel:

import FreeCAD, Draft

p1 = FreeCAD.Vector(0, 0, 0)
p2 = FreeCAD.Vector(1000, 1000, 0)
p3 = FreeCAD.Vector(2000, 0, 0)
p4 = FreeCAD.Vector(1500, -2000, 0)

BezCurve1 = Draft.makeBezCurve([p1, p2, p3, p4], closed=True)
BezCurve2 = Draft.makeBezCurve([p4, 1.3*p2, p1, 4.1*p3], closed=True)
BezCurve3 = Draft.makeBezCurve([1.7*p3, 1.5*p4, 2.1*p2, p1], closed=True)