Draftː Polilinea in B-spline

From FreeCAD Documentation
Revision as of 09:32, 4 September 2021 by Heda (talk | contribs)

Polilinea in B-spline

Posizione nel menu
Draft → Polilinea in B-spline
Ambiente
Draft, Architettura
Avvio veloce
Nessuno
Introdotto nella versione
-
Vedere anche
Polilinea, B-spline

Descrizione

Questo strumento converte i segmenti di una linea spezzata, qui definita Polilinea, in curve di tipo B-spline, e viceversa.

Conversione di una polilinea in una B-Spline e di una B-spline chiusa in un contorno chiuso

Utilizzo

  1. Selezionare una linea Polilinea o una BSpline. Lo strumento è disabilitato se nessun oggetto è selezionato.
  2. Premere il pulsante Polilinea in BSpline

Notes

  • The command may result in a closed, self-intersecting Draft Wire or Draft BSpline with a face. Such an object will not display properly in the 3D view. Its DatiMake Face property, or its DatiClosed property, must be set to false.

Scripting

Per lo strumento WireToBSpline non è disponibile un'interfaccia di programmazione; tuttavia, creare un nuovo oggetto dai punti di un altro è semplice.

Esempio:

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()