Draft: Scala

From FreeCAD Documentation
Revision as of 19:45, 3 September 2019 by Renatorivo (talk | contribs)

Scala

Posizione nel menu
Draft → Scala
Ambiente
Draft, Architettura
Avvio veloce
S C
Introdotto nella versione
-
Vedere anche
Clona, Offset

Descrizione

Lo strumento Scala ridimensiona o copia gli oggetti selezionati attorno a un punto base.

Lo strumento Scala può produrre una copia o un Clone in una scala definita. Utilizzare Offset per produrre una copia in scala di un set di contorni con un determinato offset. Una semplice copia senza ridimensionamento può essere prodotta con Sposta.

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

File:Draft Scale example.jpg

Ridimensionamento di un oggetto da un punto di riferimento a un secondo punto

Utilizzo

  1. Selezionare gli oggetti che si desidera scalare
  2. Premere il pulsante Scala, o premere i tasti S quindi C. Se nessun oggetto è selezionato, si viene invitati a selezionarne uno.
  3. Fare clic su un primo punto nella vista 3D o digitare le coordinate e premere il pulsante aggiungi punto. Questo serve come punto base dell'operazione.
  4. Impostare i fattori X, Y e Z e le opzioni appropriate, quindi premere Invio o OK per completare l'operazione.

Opzioni

  • Per inserire le coordinate manualmente, è sufficiente inserire i numeri, quindi premere Invio tra ciascun componente X, Y e Z. È possibile premere il pulsante aggiungi punto quando si hanno i valori desiderati per inserire il punto.
  • Inserire i fattori X, Y e Z per definire il ridimensionamento lungo tali direzione.
    • Fare clic sulla casella di controllo "Scalatura uniforme" per bloccare i fattori X, Y e Z sullo stesso valore.
    • Fare clic sulla casella di controllo "Orientamento del piano di lavoro" per bloccare il ridimensionamento X, Y e Z lungo il corrente piano di lavoro; altrimenti, vengono utilizzate le direzioni globali X, Y e Z.
  • Tre opzioni controllano il risultato dell'operazione di ridimensionamento:
    • Crea un clone. Viene creato un Clone dell'oggetto originale. Questo funziona per tutti i tipi di oggetto.
Nota: anche se i fattori di scala vengono lasciati ai valori predefiniti (1.0, 1.0, 1.0), un clone può essere modificato manualmente editando i fattori nell'editor delle proprietà.
  • Modifica l'originale. Modifica le dimensioni dell'oggetto originale. Funziona solo con oggetti Draft e forme di Part non parametriche.
  • Crea una copia. Viene creata una copia ridimensionata dell'oggetto originale. Questo funziona per tutti i tipi di oggetto, ma solo le copie degli oggetti Draft sono parametriche.
Nota: una copia è un oggetto completamente diverso, indipendente dalla forma originale; viene creato nella scala specificata e quindi ha il proprio set di proprietà. Invece, un Clone è collegato alla forma originale e l'unica proprietà che può essere modificata è la scala.

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

scaledlist = scale(objectslist, delta=Vector(1,1,1), center=Vector(0,0,0), copy=False, legacy=False)
  • Scala gli oggetti della objectslist con i fattori specificati dai componenti di delta, definiti come un FreeCAD.Vector, e usando center come punto base.
    • objectslist è un singolo oggetto o un elenco di oggetti.
  • Se copy è True vengono create delle copie invece di modificare gli oggetti originali.
  • Se legacy è True, viene utilizzata la modalità copia diretta (obsoleta), altrimenti viene eseguita una copia parametrica.
  • Viene restituita una scaledlist con gli oggetti in scala originali o con i nuovi cloni.
    • scaledlist è un singolo oggetto o un elenco di oggetti, a seconda dell'input objectslist.

Esempio:

import FreeCAD, Draft

Polygon1 = Draft.makePolygon(3, radius=1200)
delta1 = FreeCAD.Vector(2.3, 0.75, 0)

clone_1 = Draft.scale(Polygon1, delta1, copy=True)

Polygon2 = Draft.makePolygon(5, radius=750)
delta2 = FreeCAD.Vector(-2, -1.5, 0)

clone_2 = Draft.scale([Polygon1, Polygon2], delta2, copy=True)
Draft.move(clone_2, FreeCAD.Vector(3500, 1000, 0))