Draft Array/it: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Updating to match new version of source page)
(117 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}}


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


<div class="mw-translate-fuzzy">
[[Image:Draft_Array_example.jpg|400px]]
{{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">
=== Utilizzo ===
{{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==
# 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}}


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.
=== Opzioni ===


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]].
* La matrice ha come impostazione iniziale predefinita quella ortogonale, è possibile modificare questa modalità nelle sue proprietà.


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]].
=== Proprietà ===


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]] .
* {{ProprietaDati|Array Type}}: Specifica il tipo di matrice: ortho o polar


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


[[File:Draft_CircularArray_example.png|x300px]]
* {{ProprietaDati|Interval X}}: L'intervallo tra ciascuna copia sul primo asse
* {{ProprietaDati|Interval Y}}: L'intervallo tra ciascuna copia sul secondo asse
* {{ProprietaDati|Interval Z}}: L'intervallo tra ciascuna copia sul terzo asse
* {{ProprietaDati|Number X}}: Il numero di copie sul primo asse
* {{ProprietaDati|Number Y}}: Il numero di copie sul secondo asse
* {{ProprietaDati|Number Z}}: Il numero di copie sul terzo asse


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


==Utilizzo==
* {{ProprietaDati|Axis}}: La direzione normale al cerchio della matrice
# Selezionare un oggetto con cui si desidera creare una serie.
* {{ProprietaDati|Center}}: Il punto centro della matrice
# Premere il pulsante {{Button|[[Image:Draft Array.svg|16px]] [[Draft Array/it|Serie]]}}. Se nessun oggetto è selezionato, si viene invitati a selezionarne uno.
* {{ProprietaDati|Angle}}: L'angolo da coprire con le copie
# L'oggetto Array viene creato immediatamente. È necessario modificare le proprietà della serie per modificare il numero e la direzione delle copie create.
* {{ProprietaDati|Number Polar}}: Il numero di copie


Ogni elemento della serie è un clone esatto dell'oggetto originale, ma l'intera serie è considerata una singola unità in termini di proprietà e aspetto.
=== Script ===


== Opzioni ==
Lo strumento Matrice può essere utilizzato nelle [[macros/it|macro]] e dalla [[FreeCAD_Scripting_Basics/it|console di Python]] utilizzando una delle seguenti funzioni:


Non ci sono opzioni per questo strumento. O funziona con l'oggetto selezionato o non funziona.
- per le matrici rettangolari
<syntaxhighlight>
array (objectslist,xvector,yvector,xnum,ynum,[zvector,znum])
</syntaxhighlight>
- per le matrici polari
<syntaxhighlight>
array (objectslist,center,totalangle,totalnum)
</syntaxhighlight>
* Crea una schiera di copie degli oggetti contenuti nella lista (che può essere un oggetto o un elenco di oggetti).
* Nel caso di matrice rettangolare, produce xnum di iterazioni nella direzione x alla distanza xvector tra le iterazioni, e stessa cosa per la direzione Y con yvector e ynum.
* Nel caso di matrice polare, center è un vettore, totalangle è l'angolo da coprire (in gradi) e totalnum è il numero di oggetti, compreso l'originale.


== Proprietà ==
oppure, con un solo oggetto:
* {{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:
- per le matrici rettangolari
* {{PropertyData/it|Interval X}}: intervallo tra ciascuna copia sull'asse X.
<syntaxhighlight>
* {{PropertyData/it|Interval Y}}: intervallo tra ciascuna copia sull'asse Y.
makeArray (object,xvector,yvector,xnum,ynum)
* {{PropertyData/it|Interval Z}}: intervallo tra ciascuna copia sull'asse Z.
</syntaxhighlight>
* {{PropertyData/it|Number X}}: il numero di copie sull'asse X.
- per le matrici polari
* {{PropertyData/it|Number Y}}: il numero di copie sull'asse Y.
<syntaxhighlight>
* {{PropertyData/it|Number Z}}: il numero di copie sull'asse Z.
makeArray (object,center,totalangle,totalnum)

</syntaxhighlight>
Per le serie polari:
* Crea una schiera di oggetti parametrici, duplicati dell'oggetto dato
* {{PropertyData/it|Axis}}: specifica la direzione normale del cerchio della schiera.
* Nel caso di matrice rettangolare, produce xnum di iterazioni nella direzione x alla distanza xvector tra le iterazioni, e stessa cosa per la direzione Y con yvector e ynum.
* {{PropertyData/it|Center}}: specifica il punto centrale del cerchio della schiera.
* Nel caso di matrice polare, center è un vettore, totalangle è l'angolo da coprire (in gradi) e totalnum è il numero di oggetti, compreso l'originale.
* {{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 ===
La firma di base è la seguente:

{{Code|code=
array_list = array(objectslist, arg1, arg2, arg3, arg4=None, arg5=None, arg6=None)
}}

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

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

{{Code|code=
array_list = array(objectslist, center, totalangle, totalnum)
}}

* 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:
Esempio:
<syntaxhighlight>
import FreeCAD,Draft
Draft.array(FreeCAD.ActiveDocument.ActiveObject,FreeCAD.Vector(2,0,0),FreeCAD.Vector(0,2,0),2,2)


{{Code|code=
</syntaxhighlight>
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:

{{Code|code=
Array = makeArray(baseobject, arg1, arg2, arg3, arg4=None, arg5=None, arg6=None, name="Array")
}}

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)