Draft Rotate/it: Difference between revisions

From FreeCAD Documentation
No edit summary
No edit summary
Line 139: Line 139:


<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
{{Docnav/it
{{Docnav/it|[[Draft_Move/it|Sposta]]|[[Draft_Offset/it|Offset]]|[[Draft_Module/it|Draft]]|IconL=Draft_Move.svg|IconC=Workbench_Draft.svg|IconR=Draft_Offset.svg}}
|[[Draft_Move/it|Sposta]]
|[[Draft_Offset/it|Offset]]
|[[Draft_Workbench/it|Draft]]
|IconL=Draft_Move.svg
|IconC=Workbench_Draft.svg
|IconR=Draft_Offset.svg
}}
</div>
</div>



Revision as of 19:41, 4 September 2021

Ruota

Posizione nel menu
Draft → Ruota
Ambiente
Draft, Architettura
Avvio veloce
R O
Introdotto nella versione
0.7
Vedere anche
Sposta, Serie

Descrizione

Questo strumento ruota o copia e ruota gli oggetti selezionati di un determinato angolo attorno a un punto di riferimento.

Lo strumento Ruota può essere utilizzato su forme 2D create con Draft o Schizzo, ma può anche essere utilizzato su molti tipi di oggetti 3D come quelli creati con Part o Arch.

Rotazione di un oggetto usando un punto di riferimento, da un angolo di riferimento a un altro angolo

Utilizzo

See also: Draft Snap and Draft Constrain.

  1. Selezionare gli oggetti che si desidera ruotare o copiare
  2. Premere il pulsante Ruota, or press premere i tasi R e poi O. Se nessun oggetto è selezionato, si viene inviti a selezionarne uno.
  3. Selezionare un primo punto nella vista 3D, oppure digitare le sue coordinate e premere il pulsante Aggiungi punto. Questo punto serve da punto base dell'operazione, attraverso il quale passerà l'asse di rotazione.
  4. Fare clic su un secondo punto nella vista 3D o digitare un angolo base. Questo definisce una linea di base che ruoterà attorno al primo punto.
  5. Fare clic su un terzo punto nella vista 3D o digitare un angolo di rotazione. Questo indica la rotazione della linea di base, e quindi degli oggetti.

Opzioni

The single character keyboard shortcuts and the modifier key mentioned here can be changed. See Draft Preferences.

  • Premere X, Y o Z dopo un punto per vincolare il prossimo punto sull'asse dato.
  • Per inserire le coordinate manualmente, è sufficiente inserire i numeri, quindi premere Invio per ciascun componente X, Y e Z. È possibile premere il pulsante Inserisci punto quando si hanno i valori desiderati per inserire il punto.
  • Premere T oppure fare clic sulla casella di controllo per attivare la modalità "continua". Se la modalità continua è attiva, lo strumento Ruota viene riavviato al termine dell'operazione, consentendo di ruotare o copiare nuovamente gli oggetti senza premere nuovamente il pulsante dello strumento.
  • Premere P oppure fare clic sulla casella di controllo per attivare la modalità Copia. Se la modalità copia è attiva, lo strumento Ruota mantiene la forma originale al suo posto e crea una copia con l'angolo impostato impostato dal terzo punto.
Si possono usare sia T che P per posizionare più copie in sequenza. In questo caso, l'elemento che viene duplicato è l'ultima copia posizionata.
  • Tenere premuto Alt dopo il secondo punto per attivare o disattivare la modalità di copia. Tenendo premuto Alt dopo aver cliccato sul terzo punto, si può continuare a posizionare le copie usando lo stesso punto base di rotazione e la stessa linea di base; rilasciare Alt per terminare l'operazione e vedere tutte le copie.
  • Tenere premuto Ctrl mentre si ruota per forzare lo snap al punto di aggancio più vicino, indipendentemente dalla distanza.
  • Tenere premuto Maiusc mentre si ruota per vincolare il secondo punto in orizzontale o in verticale rispetto al primo.
  • Premere il pulsante Esc o Chiudi per interrompere il comando corrente; le copie già posizionate rimangono.

Notes

  • An Object that is attached cannot be rotated with the Draft Rotate command. To rotate it either its DatiSupport object has to be rotated, or its DatiAttachment Offset has to be changed.

Preferences

See also: Preferences Editor and Draft Preferences.

  • To change the number of decimals used for the input of coordinates and angles: Edit → Preferences... → General → Units → Units settings → Number of decimals.
  • To store and reuse the same copy mode setting across commands: Edit → Preferences... → Draft → General settings → Draft tools options → Global copy mode.
  • To reselect the base objects after copying objects: Edit → Preferences... → Draft → General settings → Draft tools options → Select base objects after copying.

Scripting

Lo strumento Ruota può essere usato nelle macro e dalla console Python utilizzando la seguente funzione:

rotated_list = rotate(objectslist, angle, center=Vector(0,0,0), axis=Vector(0,0,1), copy=False)
  • Ruota il punto base degli oggetti della objectlist di un dato angle.
    • objectlist può essere un singolo oggetto o un elenco di oggetti.
    • Se sono dati un punto base di rotazione (center), e un axis, essi sono usati; altrimenti la rotazione è basata sull'origine e attorno all'asse Z.
L'angolo di rotazione è relativo al punto base dell'oggetto, il che significa che se un oggetto viene ruotato di 45 gradi e poi di altri 45 gradi, in totale ruota di 90 gradi dalla sua posizione originale.
  • Se copy è True vengono create delle copie invece di ruotare gli oggetti originali.
  • Viene restituita una rotatedlist con gli oggetti originali ruotati o con le nuove copie.
    • rotatedlist è un singolo oggetto o un elenco di oggetti, a seconda dell'input di objectlist.

Esempio:

import FreeCAD as App
import Draft

doc = App.newDocument()

polygon1 = Draft.make_polygon(3, radius=300)
Draft.move(polygon1, App.Vector(1000, 0, 0))

# Rotation around the origin
angle1 = 45
rot2 = Draft.rotate(polygon1, angle1, copy=True)
rot3 = Draft.rotate(polygon1, 2*angle1, copy=True)
rot4 = Draft.rotate(polygon1, 4*angle1, copy=True)

polygon2 = Draft.make_polygon(3, radius=1000)
polygon3 = Draft.make_polygon(5, radius=500)
Draft.move(polygon2, App.Vector(2000, 0, 0))
Draft.move(polygon3, App.Vector(2000, 0, 0))

# Rotation around another point
angle2 = 60
cen = App.Vector(3100, 0, 0)
list2 = [polygon2, polygon3]
rot_list2 = Draft.rotate(list2, angle2, center=cen, copy=True)
rot_list3 = Draft.rotate(list2, 2*angle2, center=cen, copy=True)
rot_list4 = Draft.rotate(list2, 4*angle2, center=cen, copy=True)

doc.recompute()