Draft Bézierkurve

From FreeCAD Documentation
Revision as of 17:02, 2 May 2021 by Maker (talk | contribs)

Entwurf BezKurve

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

Beschreibung

Das Entwurf BezKurve Werkzeug erstellt eine Bézierkurve oder eine stückweise Bézierkurve, aus einigen Punkten. Es verwendet den Entwurf Linienstil gesetzt auf dem Entwurfstableau.

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

  1. Rufe den Entwurf BezKurve Befehl auf verschiedene Weise auf:
  2. Drücke die Entwurf BezKurve Schaltfläche in der Entwurf Werkzeugleiste
  3. * Drücke die B, dann Z Tastaturkürzel
    • Verwende den Entwurf → Bezier Werkzeuge → BezKurve Eintrag im Entwurfmenü
  4. Klicke einen ersten Punkt in der 3D Ansicht oder tippe eine Koordinate und drücke die Punkt hinzufügen Schaltfläche.
  5. Klicke weitere Punkte in der 3D Ansicht oder tippe eine Koordinate und drücke die Punkt hinzufügen Schaltfläche.
  6. Drücke Esc oder die Schließen Schaltfläche 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 Entwurf Bearbeiten Schaltfläche geändert werden. Dann kannst Du die Punkte an eine neue Position verschieben oder Punkt hinzufügen oder Punkt entfernen klicken und dann auf die Kurve klicken, um Punkte hinzuzufügen oder zu entfernen. Du kannst auch den Beschränkungstyp jedeses 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.

Begrenzungen

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

Optionen

  • Drücke A oder die Beenden Schaltfläche um die Kurve fertig zu stellen und offen zu lassen.
  • Drücke O


  • 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.


  • Halte Strg während des Zeichnens, um Fangen deines Punktes unabhängig von der Entfernung an die nächstgelegene Fangposition zu zwingen.
  • Drücke Umschalten während des Zeichnens, um deinen nächsten Punkt horizontal oder vertikal zu Beschränke in Bezug auf den letzten.
  • Drücke Strg+Z oder drücke die Rückgängig Taste, um dem letzten Punkt rückgängig zu machen.
  • Drücke Esc oder die Schließen Taste, um den aktuellen Befehl abzubrechen; bereits platzierte Kurvensegmente bleiben erhalten.

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)