Draft Array/it: Difference between revisions

From FreeCAD Documentation
(Replaced content with "Per le schiere polari:")
(Updating to match new version of source page)
(102 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<languages/>
{{GuiCommand/it|Name=Draft_Array|Name/it=Matrice|Workbenches=[[Draft Module/it|Draft]], [[Arch Module/it|Architettura]]|MenuLocation=Draft → Matrice|SeeAlso=[[Draft PathArray/it|PathArray]]}}

{{VeryImportantMessage|Questo comando è obsoleto in 0.19. Per il nuovo utilizzo, vedere [[Draft_OrthoArray/it|Serie ortogonale]], che funziona essenzialmente allo stesso modo.
Vedere anche [[Draft_PolarArray/it|Serie polare]] e [[Draft_CircularArray/it|Serie circolare]].}}

<div class="mw-translate-fuzzy">
{{Docnav/it
|[[Draft_Draft2Sketch/it|Da Draft a Sketch]]
|[[Draft_LinkArray/it|Serie di link]]
|[[Draft_Module/it|Draft]]
|IconL=Draft_Draft2Sketch.svg
|IconC=Workbench_Draft.svg
|IconR=Draft_LinkArray.svg
}}
</div>

<div class="mw-translate-fuzzy">
{{GuiCommand/it
|Name=Draft_Array
|Name/it=Serie
|MenuLocation=Draft → Serie
|Workbenches=[[Draft Module/it|Draft]]
|SeeAlso=[[Draft_PolarArray/it|Serie polare]], [[Draft_CircularArray/it|Serie circolare]],[[Draft PathArray/it|Serie su tracciato]], [[Draft PointArray/it|Serie su punti]], [[Draft Clone/it|Clone]]
}}
</div>


==Descrizione==
==Descrizione==
Lo strumento Matrice crea una schiera (array) ortogonale (3 assi) o polare utilizzando gli oggetti selezionati. Se non è selezionato nessun oggetto, lo strumento chiede di selezionarne uno.


Lo strumento {{Button|[[Image:Draft Array.svg|16px]] [[Draft Array/it|Serie]]}} crea una schiera (array) ortogonale (3 assi) o polare utilizzando gli oggetti selezionati.
[[Image:Draft_Array_example.jpg|400px]]


Questo strumento può essere utilizzato su forme 2D create con [[Draft Workbench/it|Draft]] ma può anche essere utilizzato su molti tipi di oggetti 3D come quelli creati con [[Part Workbench/it|Part]] o [[PartDesign Workbench/it|PartDesign]].
== Utilizzo ==
# Selezionare gli oggetti con si desidera creare una schiera, che si desidera duplicare secondo un certo ordine
# Premere il pulsante {{KEY/it|[[Image:Draft Array.png|16px]] Matrice}}
# Selezionare {{PropertyData|Array Type}}: Specifica il tipo di matrice: ortogonale o polare
# Per le matrici ortogonali:
## {{PropertyData|Interval X}}: L'intervallo tra ciascuna copia sul primo asse
## {{PropertyData|Interval Y}}: L'intervallo tra ciascuna copia sul secondo asse
## {{PropertyData|Interval Z}}: L'intervallo tra ciascuna copia sul terzo asse
## {{PropertyData|Number X}}: Il numero di copie sul primo asse
## {{PropertyData|Number Y}}: Il numero di copie sul secondo asse
## {{PropertyData|Number Z}}: Il numero di copie sul terzo asse
# Per matrici polari:
## {{ProprietaDati|Axis}}: La direzione normale al cerchio della matrice
## {{ProprietaDati|Center}}: Il punto centro della matrice
## {{ProprietaDati|Angle}}: L'angolo da coprire con le copie
## {{ProprietaDati|Number Polar}}: Il numero di copie


Per creare direttamente delle serie polari e circolari, utilizzare il corrispondente strumento [[Draft_PolarArray/it|Serie polare]] e [[Draft_CircularArray/it|Serie circolare]]. Per posizionare le copie lungo un percorso utilizzare [[Draft PathArray/it|Serie su tracciato]]. Per posizionare le copie in punti specificati usare [[Draft PointArray/it|Serie su punti]]; per creare copie o cloni e posizionarli manualmente usare [[Draft Move/it|Sposta]], [[Draft Rotate/it|Ruota]], e [[Draft Clone/it|Clona]].
== Script ==

Lo strumento Matrice può essere utilizzato nelle [[macros/it|macro]] e dalla [[FreeCAD_Scripting_Basics/it|console di Python]] utilizzando una delle seguenti funzioni, secondo se si desidera ottenere delle semplici copie indipendenti dell'oggetto base, oppure una schiera parametrica collegata all'oggetto originale.
Per creare dei [[App_Link/it|Link]] invece di normali copie, usare [[Draft_LinkArray/it|Serie di link]], [[Draft_PathLinkArray/it|Serie di link su tracciato]], e l'opzione link con la [[Draft_PolarArray/it|Serie polare]] e la [[Draft_CircularArray/it|Serie circolare]] .

[[File:Draft_Array_example.png|x300px]] [[File:Draft_PolarArray_example.png|x300px]]
{{Caption|Una serie ortogonale a sinistra e una serie polare a destra da un oggetto solido}}

[[File:Draft_CircularArray_example.png|x300px]]

{{Caption|Una serie circolare da un oggetto solido, l'oggetto al centro}}

==Utilizzo==
# Selezionare un oggetto con cui si desidera creare una serie.
# Premere il pulsante {{Button|[[Image:Draft Array.svg|16px]] [[Draft Array/it|Serie]]}}. Se nessun oggetto è selezionato, si viene invitati a selezionarne uno.
# L'oggetto Array viene creato immediatamente. È necessario modificare le proprietà della serie per modificare il numero e la direzione delle copie create.

Ogni elemento della serie è un clone esatto dell'oggetto originale, ma l'intera serie è considerata 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à ==
* {{PropertyData/it|Base}}: specifica l'oggetto da duplicare nella schiera.
* {{PropertyData/it|Array Type}}: specifica il tipo di schiera da creare, {{value|"ortho"}}, {{value|"polar"}}, o {{value|"circular"}}.
* {{PropertyData/it|Fuse}}: se è {{TRUE}}, e le copie si intersecano tra loro, esse vengono fuse insieme in un'unica forma.

Per le serie ortogonali:
* {{PropertyData/it|Interval X}}: intervallo tra ciascuna copia sull'asse X.
* {{PropertyData/it|Interval Y}}: intervallo tra ciascuna copia sull'asse Y.
* {{PropertyData/it|Interval Z}}: intervallo tra ciascuna copia sull'asse Z.
* {{PropertyData/it|Number X}}: il numero di copie sull'asse X.
* {{PropertyData/it|Number Y}}: il numero di copie sull'asse Y.
* {{PropertyData/it|Number Z}}: il numero di copie sull'asse Z.

Per le serie polari:
* {{PropertyData/it|Axis}}: specifica la direzione normale del cerchio della schiera.
* {{PropertyData/it|Center}}: specifica il punto centrale del cerchio della schiera.
* {{PropertyData/it|Angle}}: specifica l'apertura dell'arco circolare da coprire con le copie; usare 360 per coprire un intero cerchio.
* {{PropertyData/it|Number Polar}}: specifica il numero di copie da inserire nella disposizione circolare.
* {{PropertyData/it|Interval Axis}}: specifica l'intervallo tra ciascuna copia nella direzione {{PropertyData/it|Axis}}.

Per la serie circolare:
* {{PropertyData/it|Number Circles}}:
* {{PropertyData/it|Radial distance}}:
* {{PropertyData/it|Symmetry}}:
* {{PropertyData/it|Tangential Distance}}:

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 {{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.

La proprietà {{PropertyData|Interval Axis}} funziona allo stesso modo. Se la forma originale si trova sul piano XY, creando un array polare con {{PropertyData|Interval Axis}} (0, 0, z) permette di creare ordinamenti a spirale.

==Script==
{{Emphasis|Vedere anche:}} [[Arch API/it|API Arch]] e [[FreeCAD Scripting Basics/it|Script di base per FreeCAD]].

Lo strumento Array può essere utilizzato nelle [[macros/it|macro]] e dalla console [[Python/it|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 ===
=== Schiera semplice ===
La firma di base è la seguente:
Per le matrici rettangolari:

{{Code|code=
{{Code|code=
array (objectslist,xvector,yvector,xnum,ynum,[zvector,znum])
array_list = array(objectslist, arg1, arg2, arg3, arg4=None, arg5=None, arg6=None)
}}
}}

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

{{Code|code=
{{Code|code=
array (objectslist,center,totalangle,totalnum)
array_list = array(objectslist, xvector, yvector, xnum, ynum)
array_list = array(objectslist, xvector, yvector, zvector, xnum, ynum, znum)
}}
}}
* 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. 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.


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


Per le schiere rettangolari:
{{Code|code=
{{Code|code=
array_list = array(objectslist, center, totalangle, totalnum)
makeArray (object,xvector,yvector,xnum,ynum)
}}
}}

Per le schiere polari:
* Crea una schiera dagli oggetti contenuti in {{incode|objectslist}}, che può essere un singolo oggetto o un elenco di oggetti.
* Nel caso di una sschiera rettangolare, {{incode|xvector}}, {{incode|yvector}}, e {{incode|zvector}} determinano la distanza tra i punti base di ciascuna copia, nelle direzioni X, Y e Z.; e {{incode|xnum}}, {{incode|ynum}}, e {{incode|znum}} sono il numero di copie nella rispettiva direzione.
* Nel caso di una sschiera polae, {{incode|center}} definisce il centro del cerchio della schiera, {{incode|totalangle}} è l'angolo in gradi dell'arco da coprire con le copie, e {{incode|totalnum}} è il numero di copie da disporre attorno al cerchio, incluso l'oggetto originale.
* {{incode|array_list}} viene restituito con le nuove copie.
** {{incode|array_list}} è un singolo oggetto o un elenco di oggetti, a seconda dell'input {{incode|objectslist}}.

Questa funzione utilizza internamente {{incode|Draft.move()}} e {{incode|Draft.rotate()}} con <code>copy=True</code>.

Esempio:

{{Code|code=
{{Code|code=
import FreeCAD, Draft
makeArray (object,center,totalangle,totalnum)

Rect = Draft.makeRectangle(1500, 500)

array_list = Draft.array(Rect, FreeCAD.Vector(1600, 0, 0), FreeCAD.Vector(0, 600, 0), 3, 4)
}}
}}
* Creates an array of the given object with, in case of rectangular array, xnum of iterations in the x direction at xvector distance between iterations, and same for y direction with yvector and ynum. In case of polar array, center is a vector, totalangle is the angle to cover (in degrees) and totalnum is the number of objects, including the original.
* The result of this function is a parametric Draft Array object.


=== Serie parametrica ===
Example:

La firma di base è la seguente:

{{Code|code=
{{Code|code=
Array = makeArray(baseobject, arg1, arg2, arg3, arg4=None, arg5=None, arg6=None, name="Array")
import FreeCAD,Draft
}}
Draft.array(FreeCAD.ActiveDocument.ActiveObject,FreeCAD.Vector(2,0,0),FreeCAD.Vector(0,2,0),2,2)


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

{{Code|code=
Array = makeArray(baseobject, xvector, yvector, xnum, ynum, name="Array")
Array = makeArray(baseobject, xvector, yvector, zvector, xnum, ynum, znum, name="Array")
}}
}}

Per creare una serie polare, si usa in questo modo:

{{Code|code=
Array = makeArray(baseobject, center, totalangle, totalnum, name="Array")
}}

* Crea un oggetto {{incode|Array}} dal {{incode|baseobject}} dato.
* Nel caso di una schiera rettangolare, {{incode|xvector}}, {{incode|yvector}}, e {{incode|zvector}} determinano la distanza tra i punti base di ciascuna copia, nelle direzioni X, Y e Z.; e {{incode|xnum}}, {{incode|ynum}}, e {{incode|znum}} sono il numero di copie nella rispettiva direzione.
* Nel caso di una schiera polare, {{incode|center}} definisce il centro del cerchio della schiera, {{incode|totalangle}} è l'angolo in gradi dell'arco da coprire con le copie, e {{incode|totalnum}} è il numero di copie da disporre attorno al cerchio, incluso l'oggetto originale.

Esempio:
{{Code|code=
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)
}}

<div class="mw-translate-fuzzy">
{{Docnav/it
|[[Draft_Draft2Sketch/it|Da Draft a Sketch]]
|[[Draft_LinkArray/it|Serie di link]]
|[[Draft_Module/it|Draft]]
|IconL=Draft_Draft2Sketch.svg
|IconC=Workbench_Draft.svg
|IconR=Draft_LinkArray.svg
}}
</div>

{{Draft Tools navi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{clear}}
{{clear}}
<languages/>

Revision as of 13:42, 1 December 2020

Questo comando è obsoleto in 0.19. Per il nuovo utilizzo, vedere Serie ortogonale, che funziona essenzialmente allo stesso modo. Vedere anche Serie polare e Serie circolare.

Serie

Posizione nel menu
Draft → Serie
Ambiente
Draft
Avvio veloce
Nessuno
Introdotto nella versione
-
Vedere anche
Serie polare, Serie circolare,Serie su tracciato, Serie su punti, Clone

Descrizione

Lo strumento Serie 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 creare direttamente delle serie polari e circolari, utilizzare il corrispondente strumento Serie polare e Serie circolare. Per posizionare le copie lungo un percorso utilizzare Serie su tracciato. Per posizionare le copie in punti specificati usare Serie su punti; per creare copie o cloni e posizionarli manualmente usare Sposta, Ruota, e Clona.

Per creare dei Link invece di normali copie, usare Serie di link, Serie di link su tracciato, e l'opzione link con la Serie polare e la Serie circolare .

Una serie ortogonale a sinistra e una serie polare a destra da un oggetto solido

Una serie circolare da un oggetto solido, l'oggetto al centro

Utilizzo

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

Ogni elemento della serie è un clone esatto dell'oggetto originale, ma l'intera serie è considerata 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 il tipo di schiera da creare, "ortho", "polar", o "circular".
  • DatiFuse: se è true, e le copie si intersecano tra loro, esse vengono fuse insieme in un'unica forma.

Per le serie 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 serie 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.

Per la serie circolare:

  • DatiNumber Circles:
  • DatiRadial distance:
  • DatiSymmetry:
  • DatiTangential Distance:

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.

La proprietà DatiInterval Axis funziona allo stesso modo. Se la forma originale si trova sul piano XY, creando un array polare con DatiInterval Axis (0, 0, z) permette di creare ordinamenti a spirale.

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 dagli oggetti contenuti in objectslist, che può essere un singolo oggetto o un elenco di oggetti.
  • Nel caso di una sschiera rettangolare, xvector, yvector, e zvector determinano la distanza tra i punti base di ciascuna copia, nelle direzioni X, Y e Z.; e xnum, ynum, e znum sono il numero di copie nella rispettiva direzione.
  • Nel caso di una sschiera polae, center definisce il centro del cerchio della schiera, totalangle è l'angolo in gradi dell'arco da coprire con le copie, e totalnum è il numero di copie da disporre attorno al cerchio, incluso l'oggetto originale.
  • array_list viene restituito con le nuove copie.
    • array_list è un singolo oggetto o un elenco di oggetti, a seconda dell'input objectslist.

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)

Serie parametrica

La firma di base è la seguente:

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

Per creare una serie 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 una serie polare, si usa in questo modo:

Array = makeArray(baseobject, center, totalangle, totalnum, name="Array")
  • Crea un oggetto Array dal baseobject dato.
  • Nel caso di una schiera rettangolare, xvector, yvector, e zvector determinano la distanza tra i punti base di ciascuna copia, nelle direzioni X, Y e Z.; e xnum, ynum, e znum sono il numero di copie nella rispettiva direzione.
  • Nel caso di una schiera polare, center definisce il centro del cerchio della schiera, totalangle è l'angolo in gradi dell'arco da coprire con le copie, e totalnum è il numero di copie da disporre attorno al cerchio, incluso l'oggetto originale.

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)