Draftː Offset

From FreeCAD Documentation
Revision as of 20:41, 21 May 2020 by Renatorivo (talk | contribs)

Offset

Posizione nel menu
Draft → Offset
Ambiente
Draft, Architettura
Avvio veloce
O S
Introdotto nella versione
-
Vedere anche
Scala, Part Offset 2D

Descrizione

Lo strumento Offset sposta l'oggetto selezionato di una determinata distanza (offset) perpendicolare a se stesso.

In genere questo strumento viene utilizzato in modalità copia per creare copie offset di un contorno di base mentre si lascia l'originale nella stessa posizione. Le copie offset sono versioni ridimensionate dell'oggetto originale. Per creare altre copie ridimensionate usare Scala. Per produrre copie esatte spostate a una data distanza usare Sposta.

Offset di un contorno a una certa distanza da uno dei suoi bordi

Utilizzo

  1. Selezionare l'oggetto che si desidera scostare.
  2. Premere il pulsante Offset, o premere i tasti Template:KEY/it e Template:KEY/it. Se nessun oggetto è selezionato, si viene invitati a selezionarne uno.
  3. Selezionare un punto nella vista 3D, o fornire una distanza

La distanza utilizzata per creare l'offset è perpendicolare a uno dei bordi della forma originale, a seconda della posizione del puntatore. Se il puntatore si sposta più vicino a un altro bordo, questo bordo diventa il riferimento per la distanza. Tenere premuto il tasto Maiusc per mantenere il bordo di riferimento corrente, pur muovendo il puntatore più vicino ad altri bordi.

Opzioni

  • Premere il tasto P o fare clic sulla casella di controllo per attivare la modalità copia. Se la modalità copia è attiva, lo strumento Offset mantiene la forma originale al suo posto e crea una copia ridimensionata nel punto selezionato.
  • Tenere premuto Alt mentre si seleziona il punto per attivare o disattivare la modalità di copia. Tenendo premuto Alt si può continuare a posizionare delle copie offset; rilasciare Alt per terminare l'operazione e vedere tutte le forme di offset.
  • Fare clic sulla casella di controllo "OCC-style" per attivare la modalità "OCC". Ciò crea un offset da entrambi i lati di un segmento di linea, che produce una speciale forma chiusa con i bordi arrotondati alle estremità dei segmenti.
Nota: con questo stile i segmenti originali vengono rimossi, quindi utilizzare la modalità copia per conservare i bordi originali.
  • Tenere premuto Ctrl mentre si si crea l'offset per agganciare in modo forzato il punto di snap più vicino, indipendentemente dalla distanza.
  • Tenere premuto Maiusc per mantenere la distanza di offset riferita al segmento corrente ed evitare di selezionare un altro riferimento.
  • Premere il tasto Esc o il pulsante Chiudi per interrompere il comando corrente; le copie offset già posizionate rimangono.

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

Offsetobj = offset(obj, delta, copy=False, bind=False, sym=False, occ=False)
  • Crea un offset del dato contorno obj applicando il delta dato, definito come un vettore, al suo primo vertice.
  • Se copy è True viene creato un altro oggetto invece di ridimensionare l'oggetto originale.
  • Se bind è True, e a condizione che l'oggetto contorno sia aperto, l'originale e l'offset sono uniti nei loro punti finali, formando una faccia.
    • Se sym è True, e anche bind è True, e l'offset è fatto su entrambi i lati del contorno, la larghezza totale è la larghezza del vettore dato.
  • Se occ è True, utilizzerà lo sfalsamento in stile OCC: crea un offset su entrambi i lati, quindi unisce i nuovi contorni e arrotonda gli angoli.
  • Restituisce unOffsetobj con l'oggetto offset originale o con la nuova copia.

Esempio:

import FreeCAD, Draft

p1 = FreeCAD.Vector(0, 0, 0)
p2 = FreeCAD.Vector(1500, 2000, 0)
p3 = FreeCAD.Vector(4000, 0, 0)

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

vector = FreeCAD.Vector(0, 500, 0)
Offset_1 = Draft.offset(Wire, vector, copy=True)
Offset_2 = Draft.offset(Wire, 3*vector, copy=True)
Offset_3 = Draft.offset(Wire, 6*vector, copy=True)
Offset_4 = Draft.offset(Wire, 9*vector, copy=True)
Offset_5 = Draft.offset(Wire, 1.5*vector, copy=True, occ=True)