Draft Array/it: Difference between revisions

From FreeCAD Documentation
(Created page with "=== 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 ...")
(Updating to match new version of source page)
(131 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.
==Options==
* The array starts as orthogonal by default, you can then change its mode in the properties.


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]].
==Properties==
* {{PropertyData|Array Type}}: Specifies the type of the array, ortho or polar


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]].
For orthogonal arrays:
* {{PropertyData|Interval X}}: The interval between each copy on the first axis
* {{PropertyData|Interval Y}}: The interval between each copy on the second axis
* {{PropertyData|Interval Z}}: The interval between each copy on the third axis
* {{PropertyData|Number X}}: The number of copies on the first axis
* {{PropertyData|Number Y}}: The number of copies on the second axis
* {{PropertyData|Number Z}}: The number of copies on the third axis


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]] .
For polar arrays:
* {{PropertyData|Axis}}: The normal direction of the array circle
* {{PropertyData|Center}}: The center point of the array
* {{PropertyData|Angle}}: The angle to cover with copies
* {{PropertyData|Number Polar}}: The number of copies


[[File:Draft_Array_example.png|x300px]] [[File:Draft_PolarArray_example.png|x300px]]
==Scripting==
{{Caption|Una serie ortogonale a sinistra e una serie polare a destra da un oggetto solido}}
The Array tool can by used in [[macros]] and from the python console by using one of the following functions.


[[File:Draft_CircularArray_example.png|x300px]]
For rectangular array:
<syntaxhighlight>
array (objectslist,xvector,yvector,xnum,ynum,[zvector,znum])
</syntaxhighlight>
For polar array:
<syntaxhighlight>
array (objectslist,center,totalangle,totalnum)
</syntaxhighlight>
* Creates an array of the objects contained in list (that can be an object or a list of objects) 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.
* This function produces standalone copies of the base object(s)


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


==Utilizzo==
For rectangular array:
# Selezionare un oggetto con cui si desidera creare una serie.
<syntaxhighlight>
# Premere il pulsante {{Button|[[Image:Draft Array.svg|16px]] [[Draft Array/it|Serie]]}}. Se nessun oggetto è selezionato, si viene invitati a selezionarne uno.
makeArray (object,xvector,yvector,xnum,ynum)
# L'oggetto Array viene creato immediatamente. È necessario modificare le proprietà della serie per modificare il numero e la direzione delle copie create.
</syntaxhighlight>
For polar array:
<syntaxhighlight>
makeArray (object,center,totalangle,totalnum)
</syntaxhighlight>
* 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.


Ogni elemento della serie è un clone esatto dell'oggetto originale, ma l'intera serie è considerata una singola unità in termini di proprietà e aspetto.
Example:
<syntaxhighlight>
import FreeCAD,Draft
Draft.array(FreeCAD.ActiveDocument.ActiveObject,FreeCAD.Vector(2,0,0),FreeCAD.Vector(0,2,0),2,2)


== Opzioni ==
</syntaxhighlight>

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 ===
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:

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