Contorno a BSpline

From FreeCAD Documentation
Revision as of 14:59, 1 December 2020 by FuzzyBot (talk | contribs) (Updating to match new version of source page)

Draft_WireToBSpline

Ubicación en el Menú
Boceto → Contorno a BSpline
Entornos de trabajo
Boceto, Arquitectura
Atajo de teclado por defecto
Ninguno
Introducido en versión
-
Ver también
Ninguno

Descripción

Esta herramienta convierte Contornos en BSplines, y viceversa.

Convert a wire to a B-Spline, and a closed B-Spline to a closed wire

Utilización

  1. Selecciona un contorno o una BSpline
  2. Presiona el botón Contorno a BSpline

A new object will be created; the original object will not be modified.

Note: if a closed wire with sharp edges is used to create a spline, the new object may have self intersecting curve segments, and may not be visible in the 3D view. If this is the case, manually set DatosMake Face to false to see the new shape, or set DatosClosed to false to create an open shape.

Opciones

  • El objeto original no será eliminado después de la operación, debes borrarlo manualmente si quieres.

Programación

No disponible, pero crear un nuevo objeto con los puntos de otro es sencillo, por ejemplo:

The Points attribute of an object is a list with the points that comprise that object; this list can be passed to functions that build geometry. Each point is defined by its FreeCAD.Vector, with units in millimeters.

  • if the active object is a wire
import FreeCAD, Draft

# Make a spline from the points of a wire
p1 = FreeCAD.Vector(1000, 1000, 0)
p2 = FreeCAD.Vector(2000, 1000, 0)
p3 = FreeCAD.Vector(2500, -1000, 0)
p4 = FreeCAD.Vector(3500, -500, 0)

base_wire = Draft.makeWire([p1, p2, p3, p4])

points1 = base_wire.Points
spline = Draft.makeBSpline(points1)

# Make a wire from the points of a spline
base_spline = Draft.makeBSpline([-p1, -1.3*p2, -1.2*p3, -2.1*p4])

points2 = base_spline.Points
Wire = Draft.makeWire(points2)