Draft DrahtZuBSpline

From FreeCAD Documentation
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
This page is a translated version of the page Draft WireToBSpline and the translation is 100% complete.

Draft DrahtZuBSpline

Menüeintrag
Änderung → Kantenzug zu BSpline
Arbeitsbereich
Draft, Arch
Standardtastenkürzel
Keiner
Eingeführt in Version
-
Siehe auch
Draft Draht, Draft BSpline

Beschreibung

Der Befehl Draft DrahtZuBSpline wandelt Draft Kantenzüge in Draft B-Splines und umgekehrt.

Umwandlung eines Draft-Kantenzuges in einen Draft-B-Spline und eines geschlossenen Draft-B-Splines in einen geschlossenen Draft-Kantenzug

Anwendung

  1. Einen Draft Kantenzug oder einen Draft B-Spline auswählen.
  2. Es gibt mehrere Möglichkeiten, den Befehl aufzurufen:
    • Die Schaltfläche Kantenzug zu B-Spline drücken.
    • Den Menüeintrag Änderung → Kantenzug zu B-Spline auswählen.
  3. Ein neues Objekt wird erstellt.

Hinweise

  • Der Befehl kann zu einem geschlossenen, sich selbst durchdringenden Draft Kantenzug oder Draft B-Spline mit einer Fläche führen. Ein solches Objekt wird in der 3D-Ansicht nicht korrekt dargestellt. Seine Daten-EigenschaftMake Face oder seine Daten-EigenschaftClosed muss auf false gesetzt werden.

Skripten

Siehe auch: Autogenerierte API-Dokumentation und FreeCAD Grundlagen Skripten.

Um einen Draht in einen B-Spline umzuwandeln oder umgekehrt, wird die Eigenschaft Points des Quellobjekts an die Methode make_bspline bzw. die Methode make_wire des Draft-Moduls übergeben.

Beispiel:

import FreeCAD as App
import Draft

doc = App.newDocument()

p1 = App.Vector(1000, 1000, 0)
p2 = App.Vector(2000, 1000, 0)
p3 = App.Vector(2500, -1000, 0)
p4 = App.Vector(3500, -500, 0)

base_wire = Draft.make_wire([p1, p2, p3, p4])
base_spline = Draft.make_bspline([-p1, -1.3*p2, -1.2*p3, -2.1*p4])

points1 = base_wire.Points
spline_from_wire = Draft.make_bspline(points1)

points2 = base_spline.Points
wire_from_spline = Draft.make_wire(points2)

doc.recompute()