Draft WireToBSpline/it: Difference between revisions

From FreeCAD Documentation
(Created page with "==Note==")
No edit summary
 
(6 intermediate revisions by 2 users not shown)
Line 31: Line 31:
# Selezionare una [[Draft_Wire/it|Draft Polilinea]] o una [[Draft_BSpline/it|Draft B-spline]].
# Selezionare una [[Draft_Wire/it|Draft Polilinea]] o una [[Draft_BSpline/it|Draft B-spline]].
# Ci sono diversi modi per invocare il comando:
# Ci sono diversi modi per invocare il comando:
#* Premere il pulsante {{Button|[[Image:Draft_WireToBSpline.svg|16px]] [[Draft_WireToBSpline|Draft Polilinea in B-spline]]}}.
#* Premere il pulsante {{Button|[[Image:Draft_WireToBSpline.svg|16px]] [[Draft_WireToBSpline/it|Polilinea in B-spline]]}}.
#* Selezionare l'opzione {{MenuCommand|Modifiche → [[Image:Draft_WireToBSpline.svg|16px]] Polilinea in B-spline}} dal menu.
#* Selezionare l'opzione {{MenuCommand|Modifiche → [[Image:Draft_WireToBSpline.svg|16px]] Polilinea in B-spline}} dal menu.
# Viene creato un nuovo oggetto.
# Viene creato un nuovo oggetto.
Line 38: Line 38:
==Note==
==Note==


* The command may result in a closed, self-intersecting [[Draft_Wire|Draft Wire]] or [[Draft_BSpline|Draft BSpline]] with a face. Such an object will not display properly in the [[3D_view|3D view]]. Its {{PropertyData|Make Face}} property, or its {{PropertyData|Closed}} property, must be set to {{FALSE}}.
* Il comando potrebbe far risultare una [[Draft_Wire/it|Draft Polilinea]] o [[Draft_BSpline/it|Draft B-spline]] autointersecante con una faccia. Tale oggetto non verrà visualizzato correttamente nella [[3D_view/it|Vista 3D]]. La sua proprietà {{PropertyData|Make Face}}, o la sua proprietà {{PropertyData|Closed}}, deve essere impostata su {{FALSE}}.


==Scripting==
<span id="Scripting"></span>
==Script==


Vedere anche: [https://freecad.github.io/SourceDoc/ Autogenerated API documentation] e [[FreeCAD_Scripting_Basics/it|Script di base per FreeCAD]].
<div class="mw-translate-fuzzy">
== Script ==
{{Emphasis|Vedere anche:}} [[Draft API/it|Draft API]] e [[FreeCAD Scripting Basics/it|Nozioni di base sugli script di FreeCAD]].
</div>


Per convertire una Polilinea in una B-spline, o viceversa, passare la proprietà {{incode|Points}} dell'oggetto sorgente al metodo {{incode|[[Draft_BSpline/it#Script|make_bspline]]}}, o rispettivamente al metodo {{ incode|[[Draft_Wire/it#Script|make_wire]]}}, del modulo Draft.
<div class="mw-translate-fuzzy">
Per lo strumento WireToBSpline non è disponibile un'interfaccia di programmazione; tuttavia, creare un nuovo oggetto dai punti di un altro è semplice.
</div>


Esempio:
Esempio:

Latest revision as of 17:10, 8 December 2023

Polilinea in B-spline

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

Descrizione

Il comando Draft Polilinea in B-spline converte Draft Polilinee in Draft B-splines e viceversa.

Conversione di un Draft Polilinea in un Draft B-spline e di una Draft B-spline chiusa in una Draft Polilinea chiusa

Utilizzo

  1. Selezionare una Draft Polilinea o una Draft B-spline.
  2. Ci sono diversi modi per invocare il comando:
    • Premere il pulsante Polilinea in B-spline.
    • Selezionare l'opzione Modifiche → Polilinea in B-spline dal menu.
  3. Viene creato un nuovo oggetto.

Note

  • Il comando potrebbe far risultare una Draft Polilinea o Draft B-spline autointersecante con una faccia. Tale oggetto non verrà visualizzato correttamente nella Vista 3D. La sua proprietà DatiMake Face, o la sua proprietà DatiClosed, deve essere impostata su false.

Script

Vedere anche: Autogenerated API documentation e Script di base per FreeCAD.

Per convertire una Polilinea in una B-spline, o viceversa, passare la proprietà Points dell'oggetto sorgente al metodo make_bspline, o rispettivamente al metodo make_wire, del modulo Draft.

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