Std Placement/it: Difference between revisions

From FreeCAD Documentation
No edit summary
(Created page with "Il modulo matematico fornisce un metodo {{incode|radians()}} per convertire facilmente i gradi in radianti e deve essere prima importato.")
 
(9 intermediate revisions by 2 users not shown)
Line 10: Line 10:
}}
}}


<div class="mw-translate-fuzzy">
{{GuiCommand/it
{{GuiCommand/it
|Name=Std_Placement
|Name=Std_Placement
Line 16: Line 15:
|MenuLocation=Modifica → Posizionamento...
|MenuLocation=Modifica → Posizionamento...
|Workbenches=Tutti
|Workbenches=Tutti
|SeeAlso=[[Std_Alignment/it|Allinea]], [[Tasks Placement/it|Azioni di posizionamento]], [[Placement/it|Posizionamento]]
|SeeAlso=[[Std_Alignment/it|Allinea]], [[Placement/it|Posizionamento]]
}}
}}
</div>


<span id="Description"></span>
<span id="Description"></span>
Line 31: Line 29:
==Utilizzo==
==Utilizzo==


# Seleziona un singolo oggetto che ha una proprietà {{PropertyData|Placement}} nell'[[Property_editor/it|editor di proprietà]].
<div class="mw-translate-fuzzy">
# Selezionare un singolo oggetto. L'oggetto deve avere una [[Property editor/it|proprietà]] {{PropertyData|Placement}}.
# Selezionare l'opzione {{MenuCommand|Modifica → Posizionamento...}} dal menu.
# Selezionare l'opzione {{MenuCommand|Modifica → Posizionamento...}} dal menu.
# Modificare uno o più parametri di traslazione e rotazione.
# Modificare uno o più parametri di traslazione e rotazione.
Line 38: Line 35:
#* Premere il pulsante {{Button|OK}} per applicare le modifiche e chiudere il pannello delle azioni.
#* Premere il pulsante {{Button|OK}} per applicare le modifiche e chiudere il pannello delle azioni.
#* Premere il pulsante {{Button|Applica}} per applicare le modifiche, ma tenere aperto il pannello delle azioni per ulteriori modifiche.
#* Premere il pulsante {{Button|Applica}} per applicare le modifiche, ma tenere aperto il pannello delle azioni per ulteriori modifiche.
# Premere {{KEY|Esc}} o il pulsante {{Button|Cancel}} per interrompere l'operazione. Questo annullerà tutte le modifiche che non sono state applicate.
</div>


The dialog can also be launched by clicking on the ellipsis button {{Button|...}} that appears in the [[Property_editor|property editor]] when you click on the {{PropertyData|Placement}} property.
La finestra di dialogo può essere avviata anche facendo clic sul pulsante con i puntini di sospensione {{Button|...}} che appare nell'[[Property_editor/it|editor di proprietà]] quando si fa clic sulla proprietà {{PropertyData|Placement}}.


<span id="Notes"></span>
<span id="Notes"></span>
==Note==
==Note==


* Per ulteriori informazioni sui parametri di posizionamento, vedere la pagina [[Placement/it|Posizionamento]] e il tutorial [[Aeroplane/it|Aereo]].
<div class="mw-translate-fuzzy">
* L'angolo di rotazione può essere impostato in gradi nella GUI ma è memorizzato internamente in radianti, quindi gli angoli solitamente devono essere convertiti quando vengono utilizzati negli script.
* Il pannello delle azioni di posizionamento viene visualizzato anche quando si seleziona un oggetto, fare clic nel campo {{PropertyData|Placement}} nell'[[Property_editor/it|editor delle proprietà]] o nella [[Combo_view/it|vista combinata]], quindi premere il pulsante {{Button|...}}.
* Per ulteriori informazioni sui parametri di posizionamento, consultare le pagine [[Tasks_Placement/it|Azioni di posizionamento]] e [[Placement/it|Posizionamento]] e il tutorial [[Aeroplane/it|Aeroplano]].
</div>


<span id="Scripting"></span>
<span id="Scripting"></span>
Line 57: Line 52:
Vedere il [[Python_scripting_tutorial/it#Vettori_e_posizionamenti|tutorial di script Python]].
Vedere il [[Python_scripting_tutorial/it#Vettori_e_posizionamenti|tutorial di script Python]].


A placement is internally defined by a matrix; in many cases it is simpler to represent it by means of two components, a {{incode|Base}} point (vector), and a {{incode|Rotation}} value. The {{incode|Rotation}} itself has different representations; it can be entirely defined by the value of a "[https://en.wikipedia.org/wiki/Quaternion quaternion]" {{incode|(xi + yj + zk + w)}}, but it can also be described by a rotation {{incode|Axis}} (unit vector) and a rotation {{incode|Angle}} (radians).
Un posizionamento è definito internamente da una matrice; in molti casi è più semplice rappresentarlo mediante due componenti, un punto {{incode|Base}} (vettore), e un valore {{incode|Rotazione}}. Lo stesso {{incode|Rotazione}} ha diverse rappresentazioni; può essere interamente definito dal valore di un "[https://en.wikipedia.org/wiki/Quaternion quaternione]" {{incode|(xi + yj + zk + w)}}, ma può anche essere descritto da una rotazione {{incode|Axis}} (vettore unità) e da una rotazione {{incode|Angle}} (radianti).


{{Code|code=
{{Code|code=
Line 80: Line 75:
}}
}}


Sposta il punto base dell'oggetto, quindi ruota l'oggetto di 45 gradi attorno all'asse X.
Move the base point of the object, then rotate the object 45 degrees around the X axis.

Il modulo matematico fornisce un metodo {{incode|radians()}} per convertire facilmente i gradi in radianti e deve essere prima importato.

{{Code|code=
{{Code|code=
import math
import math
Line 97: Line 95:




<div class="mw-translate-fuzzy">
{{Docnav/it
{{Docnav/it
|[[Std_SendToPythonConsole/it|Invia alla console Python]]
|[[Std_SendToPythonConsole/it|Invia alla console Python]]
|[[Std_Alignment/it|Allineamento]]
|[[Std_TransformManip/it|Trasforma]]
|[[Std_Edit_Menu/it|Menu Modifica]]
|[[Std_Edit_Menu/it|Menu Modifica]]
|IconL=Std_SendToPythonConsole.svg
|IconL=Std_SendToPythonConsole.svg
|IconR=
|IconR=Std_TransformManip.svg
|IconC=Freecad.svg
|IconC=Freecad.svg

}}
}}
</div>


{{Std Base navi{{#translation:}}}}
{{Std Base navi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{clear}}

Latest revision as of 22:44, 21 September 2023

Posizionamento

Posizione nel menu
Modifica → Posizionamento...
Ambiente
Tutti
Avvio veloce
Nessuno
Introdotto nella versione
-
Vedere anche
Allinea, Posizionamento

Descrizione

Il comando Posizionamento visualizza la scheda azioni per il posizionamento di un oggetto selezionato.

La scheda di Posizionamento

Utilizzo

  1. Seleziona un singolo oggetto che ha una proprietà DatiPlacement nell'editor di proprietà.
  2. Selezionare l'opzione Modifica → Posizionamento... dal menu.
  3. Modificare uno o più parametri di traslazione e rotazione.
  4. Effettuare una delle seguenti operazioni:
    • Premere il pulsante OK per applicare le modifiche e chiudere il pannello delle azioni.
    • Premere il pulsante Applica per applicare le modifiche, ma tenere aperto il pannello delle azioni per ulteriori modifiche.
  5. Premere Esc o il pulsante Cancel per interrompere l'operazione. Questo annullerà tutte le modifiche che non sono state applicate.

La finestra di dialogo può essere avviata anche facendo clic sul pulsante con i puntini di sospensione ... che appare nell'editor di proprietà quando si fa clic sulla proprietà DatiPlacement.

Note

  • Per ulteriori informazioni sui parametri di posizionamento, vedere la pagina Posizionamento e il tutorial Aereo.
  • L'angolo di rotazione può essere impostato in gradi nella GUI ma è memorizzato internamente in radianti, quindi gli angoli solitamente devono essere convertiti quando vengono utilizzati negli script.

Script

Vedere anche: Script di base per FreeCAD

Vedere il tutorial di script Python.

Un posizionamento è definito internamente da una matrice; in molti casi è più semplice rappresentarlo mediante due componenti, un punto Base (vettore), e un valore Rotazione. Lo stesso Rotazione ha diverse rappresentazioni; può essere interamente definito dal valore di un "quaternione" (xi + yj + zk + w), ma può anche essere descritto da una rotazione Axis (vettore unità) e da una rotazione Angle (radianti).

import FreeCAD as App

doc = App.newDocument()
obj = doc.addObject("Part::Cylinder", "Cylinder")

print(obj.Placement)
# Placement [Pos=(0,0,0), Yaw-Pitch-Roll=(0,0,0)]
print(obj.Placement.Base)
# Vector (0.0, 0.0, 0.0)
print(obj.Placement.Rotation)
# Rotation (0.0, 0.0, 0.0, 1.0)

print(obj.Placement.Rotation.Angle)
# 0.0
print(obj.Placement.Rotation.Axis)
# Vector (0.0, 0.0, 1.0)
print(obj.Placement.Rotation.Q)
# (0.0, 0.0, 0.0, 1.0)

Sposta il punto base dell'oggetto, quindi ruota l'oggetto di 45 gradi attorno all'asse X.

Il modulo matematico fornisce un metodo radians() per convertire facilmente i gradi in radianti e deve essere prima importato.

import math

obj.Placement.Base = App.Vector(5, 3, 1)
obj.Placement.Rotation.Axis = App.Vector(1, 0, 0)
obj.Placement.Rotation.Angle = math.radians(45)

print(obj.Placement)
# Placement [Pos=(5,3,1), Yaw-Pitch-Roll=(0,0,45)]
print(obj.Placement.Rotation.Q)
# (0.3826834323650898, 0.0, 0.0, 0.9238795325112867)
print(obj.Placement.Matrix)
# Matrix ((1,0,0,5),(0,0.707107,-0.707107,3),(0,0.707107,0.707107,1),(0,0,0,1))