|
Menüeintrag |
---|
Zeichnen → B-Spline 2D-Entwurf → B-Spline |
Arbeitsbereich |
Draft, BIM |
Standardtastenkürzel |
B S |
Eingeführt in Version |
0.7 |
Siehe auch |
Draft Polylinie, Draft Bézierkurve |
Der Befehl Draft B-Spline erstellt eine B-Spline-Kurve aus mehreren Punkten.
Der Befehl Draft B-Spline legt die exakten Punkte fest, durch die die Kurve verlaufen soll. Die Befehle Draft Bézierkurve und Draft KubischeBézierkurve verwenden andererseits Kontrollpunkte, um die Position und Krümmung des Splines zu definieren.
Spline festgelegt durch mehrere Punkte
Siehe auch: Draft Ablage, Draft Einrasten und Draft Beschränken.
Die im Aufgaben-Bereich vorhandenen Einzelzeichen-Tastaturkürzel können geändert werden. Siehe Draft-Einstellungen. Die hier genannten Tastaturkürzel sind die voreingestellten Tastaturkürzel (für Version 1.0).
true
gesetzt und die Kurve erhält eine gefüllte Fläche, vorausgesetzt, dass sie geschlossen ist und sich nicht selbst schneidet. Beachte, dass eine sich selbst schneidende Kurve mit einer Fläche nicht richtig angezeigt wird, für eine solche Kurve muss die Daten-EigenschaftMake Face auf false
gesetzt werden.
Siehe auch: Eigenschafteneditor.
Ein Draft-B-Spline (BSpline-Objekt) wird von einem Part Part2DObject abgeleitet und erbt alle seine Eigenschaften. Außerdem hat es die folgenden zusätzlichen Eigenschaften:
Draft
Area
): (schreibgeschützt) gibt den Flächeninhalt der von dem Spline umschlossenen Fläche an. Der Wert ist 0.0
, wenn Daten-EigenschaftMake Face auf false
gesetzt ist oder die Fläche nicht erstellt werden kann.Bool
): gibt an, ob der Spline geschlossen ist oder nicht. Wenn der Spline anfänglich offen ist, ist dieser Wert false
, wenn er auf true
gesetzt wird, wird ein Kurvensegment gezeichnet, um den Spline zu schließen. Wenn der Spline anfänglich geschlossen ist, ist dieser Wert true
, wenn man ihn auf false
setzt, wird das letzte Kurvensegment entfernt und der Spline geöffnet.Bool
): gibt an, ob der Spline eine Fläche bildet oder nicht. Wenn es true
ist, wird eine Fläche erstellt, ansonsten wird nur der Umriss als Teil des Objekts betrachtet. Diese Eigenschaft funktioniert nur, wenn die Daten-EigenschaftClosed true
ist und wenn der Spline sich nicht selbst schneidet.Float
): beeinflusst die Form des Splines.VectorList
): gibt die Punkte des Splines in seinem lokalen Koordinatensystem an.
Draft
Length
): legt die Größe des Symbols fest, das am Ende des Splines angezeigt wird.Enumeration
): gibt die Art des Symbols an, das am Ende des Splines angezeigt wird; es kann die Werte Dot
, Circle
, Arrow
, Tick
oder Tick-2
annehmen.Bool
): gibt an, ob am Ende des Splines ein Symbol angezeigt werden soll, damit er als Hinweislinie für Beschritung verwendet werden kann.Enumeration
): legt das Draft Muster fest, mit dem die Fläche des geschlossenen Splines gefüllt werden soll. Diese Eigenschaft funktioniert nur, wenn die Daten-EigenschaftMake Face auf true
gesetzt und die Ansicht-EigenschaftDisplay Mode auf Flat Lines
gesetzt ist.Float
): legt die Größe des Draft Musters fest.
Siehe auch: Autogenerierte API-Dokumentation und Grundlagen der Skripterstellung in FreeCAD.
Zum Erstellen eines Draft-B-Splines (BSpline-Objekt) wird die Methode make_bspline
des Draft-Moduls verwendet (eingeführt mit Version 0.19). Diese Methode ersetzt die veraltete Methode makeBSpline
.
bspline = make_bspline(pointslist, closed=False, placement=None, face=None, support=None)
bspline = make_bspline(Part.Wire, closed=False, placement=None, face=None, support=None)
BSpline
-Objekt mit der vorgegebenen Liste von Punkten, pointslist
.
FreeCAD.Vector
festgelegt, mit Einheiten in Millimetern.Part.Wire
sein, aus dem Punkte extrahiert werden.closed
auf True
gesetzt, oder wenn der erste und letzte Punkt identisch sind, ist der Spline geschlossen.placement
auf None
gesetzt, wird der Spline am Ursprung erstellt.face
auf True
gesetzt, und der Spline geschlossen, ergibt der Spline eine Fläche, d. h. er erscheint gefüllt.Beispiel:
import FreeCAD as App
import Draft
doc = App.newDocument()
p1 = App.Vector(0, 0, 0)
p2 = App.Vector(1000, 1000, 0)
p3 = App.Vector(2000, 0, 0)
spline1 = Draft.make_bspline([p1, p2, p3], closed=False)
spline2 = Draft.make_bspline([p1, 2*p3, 1.3*p2], closed=False)
spline3 = Draft.make_bspline([1.3*p3, p1, -1.7*p2], closed=False)
doc.recompute()