Draft Array/it: Difference between revisions

From FreeCAD Documentation
No edit summary
(Created page with "Per esempio, se {{PropertyData|Interval X}} è (2 m, 1 m, 1 m), e {{PropertyData|Number X}} è 3, vengono create 3 copies nella direzione X; la prima copia è nella posizione...")
Line 49: Line 49:
Un intervallo non è una semplice distanza, ma è un vettore (x, y, z). Se più di un valore è diverso da zero, la copia viene creata nella direzione principale, ma viene anche spostata nelle altre direzioni diverse da zero.
Un intervallo non è una semplice distanza, ma è un vettore (x, y, z). Se più di un valore è diverso da zero, la copia viene creata nella direzione principale, ma viene anche spostata nelle altre direzioni diverse da zero.


For example, if {{PropertyData|Interval X}} is (2 m, 1 m, 1 m), and {{PropertyData|Number X}} is 3, it will create 3 copies in the X direction; the first copy will be at the original position, the second will be displaced 2 m on X, 1 m on Y, and 1 m on Z; the third copy will be displaced 4 m on X, 2 m on Y, and 2 m on Z. Each array element will be moved slightly to one side (Y direction) and up (Z direction) beside the main X direction.
Per esempio, se {{PropertyData|Interval X}} è (2 m, 1 m, 1 m), e {{PropertyData|Number X}} è 3, vengono create 3 copies nella direzione X; la prima copia è nella posizione originale, la seconda è spostata di 2 m su X, 1 m su Y, e 1 m su Z; la terza copia è spostata di 4 m su X, 2 m su Y, e 2 m su Z. Ogni elemento dell'array è spostato leggermente su un lato (direzione Y) e verso l'alto (direzione Z) accanto alla direzione X principale.


The {{PropertyData|Interval Axis}} property works in the same way. If the original shape lies on the XY plane, creating a polar array with {{PropertyData|Interval Axis}} (0, 0, z) allows you to make spiral arrangements.
The {{PropertyData|Interval Axis}} property works in the same way. If the original shape lies on the XY plane, creating a polar array with {{PropertyData|Interval Axis}} (0, 0, z) allows you to make spiral arrangements.

Revision as of 06:29, 19 April 2019

Matrice

Posizione nel menu
Draft → Matrice
Ambiente
Draft, Architettura
Avvio veloce
Nessuno
Introdotto nella versione
-
Vedere anche
Schiera su tracciato, Schiera su punti, Clone

Descrizione

Lo strumento Matrice crea una schiera (array) ortogonale (3 assi) o polare utilizzando gli oggetti selezionati.

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.

Per posizionare le copie lungo un percorso utilizzare Schiera su percorso; per posizionare le copie in punti specificati usare Schiera su punti; per creare copie o cloni e posizionarli manualmente usare Sposta, Ruota, e Clona.

Una schiera ortogonale e una schiera polare da un oggetto solido

Utilizzo

  1. Selezionare un oggetto con cui si desidera creare una schiera.
  2. Premere il pulsante Schiera su percorso. Se nessun oggetto è selezionato, si viene inviti a selezionarne uno.
  3. L'oggetto Array viene creato immediatamente. È necessario modificare le proprietà della schiera per modificare il numero e la direzione delle copie create.

Ogni elemento dell'array è un clone esatto dell'oggetto originale, ma l'intero array è considerato una singola unità in termini di proprietà e aspetto.

Opzioni

Non ci sono opzioni per questo strumento. O funziona con l'oggetto selezionato o non funziona.

Proprietà

  • DatiBase: specifica l'oggetto da duplicare nella schiera.
  • DatiArray Type: specifica anche il tipo di schiera da creare "ortho" o "polar".
  • DatiFuse: se è true, e le copie si intersecano tra loro, esse vengono fuse insieme in un'unica forma.

Per le schiere ortogonali:

  • DatiInterval X: intervallo tra ciascuna copia sull'asse X.
  • DatiInterval Y: intervallo tra ciascuna copia sull'asse Y.
  • DatiInterval Z: intervallo tra ciascuna copia sull'asse Z.
  • DatiNumber X: il numero di copie sull'asse X.
  • DatiNumber Y: il numero di copie sull'asse Y.
  • DatiNumber Z: il numero di copie sull'asse Z.

Per le schiere polari:

  • DatiAxis: specifica la direzione normale del cerchio della schiera.
  • DatiCenter: specifica il punto centrale del cerchio della schiera.
  • DatiAngle: specifica l'apertura dell'arco circolare da coprire con le copie; usare 360 per coprire un intero cerchio.
  • DatiNumber Polar: specifica il numero di copie da inserire nella disposizione circolare.
  • DatiInterval Axis: specifica l'intervallo tra ciascuna copia nella direzione DatiAxis.

Le proprietà Number, X, Y, Z o Polar, includono anche l'oggetto originale, quindi questo numero è almeno uno.

Un intervallo non è una semplice distanza, ma è un vettore (x, y, z). Se più di un valore è diverso da zero, la copia viene creata nella direzione principale, ma viene anche spostata nelle altre direzioni diverse da zero.

Per esempio, se DatiInterval X è (2 m, 1 m, 1 m), e DatiNumber X è 3, vengono create 3 copies nella direzione X; la prima copia è nella posizione originale, la seconda è spostata di 2 m su X, 1 m su Y, e 1 m su Z; la terza copia è spostata di 4 m su X, 2 m su Y, e 2 m su Z. Ogni elemento dell'array è spostato leggermente su un lato (direzione Y) e verso l'alto (direzione Z) accanto alla direzione X principale.

The DatiInterval Axis property works in the same way. If the original shape lies on the XY plane, creating a polar array with DatiInterval Axis (0, 0, z) allows you to make spiral arrangements.

Script

Vedere anche: API Arch e Script di base per FreeCAD.

Lo strumento Array può essere utilizzato nelle macro e dalla console Python utilizzando due diverse funzioni, a seconda se si desidera ottenere delle copie autonome del proprio oggetto base o un oggetto array parametrico che rimane collegato all'oggetto originale.

Schiera semplice

La firma di base è la seguente:

array_list = array(objectslist, arg1, arg2, arg3, arg4=None, arg5=None, arg6=None)

Per creare una matrice rettangolare, si usa in questo modo:

array_list = array(objectslist, xvector, yvector, xnum, ynum)
array_list = array(objectslist, xvector, yvector, zvector, xnum, ynum, znum)

Per creare un array polare, si usa in questo modo:

array_list = array(objectslist, center, totalangle, totalnum)
  • Crea una schiera di oggetti contenuti nella lista (che può essere di un oggetto o di un elenco di oggetti) con, in caso di matrice rettangolare, xnum di iterazioni nella direzione x, alla distanza xvector tra le iterazioni, e lo stesso per la direzione y, con yvector e ynum, e lo stesso vale per la direzione z con zvector e znum se viene usata tale versione. Nel caso di una serie polare, il centro è un vettore, totalangle è l'angolo a coprire (in gradi) e totalnum è il numero di oggetti, compreso l'originale.
  • Questa funzione produce copie indipendenti dell'oggetto(i) di base.

Questa funzione utilizza internamente Draft.move() e Draft.rotate() con copy=True.

Esempio:

import FreeCAD, Draft

Rect = Draft.makeRectangle(1500, 500)

array_list = Draft.array(Rect, FreeCAD.Vector(1600, 0, 0), FreeCAD.Vector(0, 600, 0), 3, 4)

Schiera parametrica

La firma di base è la seguente:

Array = makeArray(baseobject, arg1, arg2, arg3, arg4=None, arg5=None, arg6=None, name="Array")

Per creare una schiera rettangolare, si usa in questo modo:

Array = makeArray(baseobject, xvector, yvector, xnum, ynum, name="Array")
Array = makeArray(baseobject, xvector, yvector, zvector, xnum, ynum, znum, name="Array")

Per creare un array polare, si usa in questo modo:

Array = makeArray(baseobject, center, totalangle, totalnum, name="Array")
  • Crea una schiera dall'oggetto dato con, in caso di matrice rettangolare, xnum di iterazioni nella direzione x alla distanza xvector tra le iterazioni, e lo stesso per la direzione y con yvector e ynum, e lo stesso vale per la direzione z con zvector e znum se viene usata tale versione. In caso di serie polare, il centro è un vettore, totalangle è l'angolo a coprire (in gradi) e totalnum è il numero di oggetti, compreso l'originale.
  • Il risultato di questa funzione è un oggetto Draft Array parametrico.

Esempio:

import FreeCAD, Draft

Rect = Draft.makeRectangle(1500, 500)
xvector = FreeCAD.Vector(1600, 0, 0)
yvector = FreeCAD.Vector(0, 600, 0)
Array = Draft.makeArray(Rect, xvector, yvector, 3, 4)

Tri = Draft.makePolygon(3, 600)
center = FreeCAD.Vector(-1600, 0, 0)
Array2 = Draft.makeArray(Tri, center, 360, 6)