Draft Array/fr: Difference between revisions

From FreeCAD Documentation
(Created page with "== Propriétés == * {{PropertyData/fr|Base}}: spécifie l'objet à dupliquer dans le tableau. * {{PropertyData/fr|Array Type}}: spécifie le type de tableau à créer, soit "...")
No edit summary
(44 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<languages/>
<languages/>
{{Docnav/fr
{{Docnav/fr|[[Draft_Draft2Sketch/fr|Draft to Sketch]]|[[Draft_PathArray/fr|Path Array]]|[[Draft_Module/fr|Draft]]|IconL=Draft_Draft2Sketch.svg|IconC=Workbench_Draft.svg|IconR=Draft_PathArray.svg}}
|[[Draft_Draft2Sketch/fr|Draft vers Sketch]]
|[[Draft_LinkArray/fr|Link Array]]
|[[Draft_Module/fr|Draft]]
|IconL=Draft_Draft2Sketch.svg
|IconC=Workbench_Draft.svg
|IconR=Draft_LinkArray.svg
}}


{{GuiCommand/fr
{{GuiCommand/fr|Name=Draft Array|Name/fr=Réseau Draft|MenuLocation=Draft → Réseau|Workbenches=[[Draft Module/fr|Draft]], [[Arch Module/fr|Arch]]|SeeAlso=[[Draft PathArray/fr|Chemin pour série de formes]], [[Draft PointArray/fr|Draft PointArray]], [[Draft Clone/fr|Draft Clone]]}}
|Name=Draft Array
|Name/fr=Réseau Draft
|MenuLocation=Draft → Réseau
|Workbenches=[[Draft Module/fr|Draft]], [[Arch Module/fr|Arch]]
|SeeAlso=[[Draft PathArray/fr|Chemin pour série de formes]], [[Draft PointArray/fr|Draft PointArray]], [[Draft Clone/fr|Draft Clone]]
}}


==Description==
==Description==
Line 9: Line 22:
Cet outil peut être utilisé sur des formes 2D créées avec l'[[Draft Workbench/fr|atelier Draft]], mais également sur de nombreux types d'objets 3D, tels que ceux créés avec l'[[Part Workbench/fr|atelier Part]] ou l'[[PartDesign Workbench/fr|atelier PartDesign]].
Cet outil peut être utilisé sur des formes 2D créées avec l'[[Draft Workbench/fr|atelier Draft]], mais également sur de nombreux types d'objets 3D, tels que ceux créés avec l'[[Part Workbench/fr|atelier Part]] ou l'[[PartDesign Workbench/fr|atelier PartDesign]].


Pour positionner les copies le long d'un chemin, utilisez l'[[Draft PathArray/fr|outil PathArray]]; pour positionner des copies à des points spécifiés, utilisez [[Draft PointArray/fr|Draft PointArray]]; pour créer des copies ou des clones et les placer manuellement, utilisez les outils [[Draft Move/fr|Draft déplacer]], [[Draft Rotate/fr|Draft rotation]], et [[Draft Clone/fr|Draft Clone]].
Pour positionner les copies le long d'un chemin, utilisez l'[[Draft PathArray/fr|outil PathArray]] ; pour positionner des copies à des points spécifiés, utilisez [[Draft PointArray/fr|Draft PointArray]] ; pour créer des copies ou des clones et les placer manuellement, utilisez les outils [[Draft Move/fr|Draft déplacer]], [[Draft Rotate/fr|Draft rotation]], et [[Draft Clone/fr|Draft Clone]].


[[Image:Draft_Array_example.jpg|400px]]
[[Image:Draft_Array_example.jpg|400px]]
{{Caption|Un tableau orthogonal et un tableau polaire d'un objet solide}}
{{Caption|Un tableau orthogonal et un tableau polaire d'un objet solide}}

Circular Array a été ajouté à FreeCAD 0.19

[[Image:Draft_CircularArray_example.png|200px]]

{{Caption|Un réseau circulaire à partir d'un objet solide, l'objet au centre}}


==Utilisation==
==Utilisation==
Line 26: Line 45:


== Propriétés ==
== Propriétés ==
* {{PropertyData/fr|Base}}: spécifie l'objet à dupliquer dans le tableau.
* {{PropertyData/fr|Base}} : spécifie l'objet à dupliquer dans le tableau.
* {{PropertyData/fr|Array Type}}: spécifie le type de tableau à créer, soit "orthogonal" or "polaire".
* {{PropertyData/fr|Array Type}} : spécifie le type de tableau à créer, soit "orthogonal" or "polaire".
* {{PropertyData/fr|Fuse}}: si elle est réglée sur {{TRUE}} et que les copies se croisent, elles seront fusionnées en une seule forme.
* {{PropertyData/fr|Fuse}} : si elle est réglée sur {{TRUE}} et que les copies se croisent, elles seront fusionnées en une seule forme.


Pour une matrice orthogonale:
For orthogonal arrays:
* {{PropertyData|Interval X}}: specifies the interval between each copy on the X axis.
*{{PropertyData/fr|Interval X}} : L’intervalle entre chaque copie sur le premier axe
* {{PropertyData|Interval Y}}: specifies the interval between each copy on the Y axis.
*{{PropertyData/fr|Interval Y}} : L’intervalle entre chaque copie sur le deuxième axe
* {{PropertyData|Interval Z}}: specifies the interval between each copy on the Z axis.
*{{PropertyData/fr|Interval Z}} : L’intervalle entre chaque copie sur le troisième axe
* {{PropertyData|Number X}}: specifies the number of copies on the X axis.
*{{PropertyData/fr|Number X}} : Le nombre de copies sur le premier axe
* {{PropertyData|Number Y}}: specifies the number of copies on the Y axis.
*{{PropertyData/fr|Number Y}} : Le nombre de copies sur le deuxième axe
* {{PropertyData|Number Z}}: specifies the number of copies on the Z axis.
*{{PropertyData/fr|Number Z}} : Le nombre de copies sur le troisième axe


Pour une matrice polaire :
For polar arrays:
* {{PropertyData|Axis}}: specifies the normal direction of the array circle.
*{{PropertyData/fr|Axis}} : La direction normale de la matrice circulaire
* {{PropertyData|Center}}: specifies the center point of the array circle.
*{{PropertyData/fr|Center}} : Le point central de la matrice
* {{PropertyData|Angle}}: specifies the aperture of the circular arc to cover with copies; use 360 to cover an entire circle.
*{{PropertyData/fr|Angle}} : L'angle couvert par les copies
* {{PropertyData|Number Polar}}: specifies the number of copies to place in the circular arrangement.
*{{PropertyData/fr|Number Polar}} : Le nombre de copies
* {{PropertyData|Interval Axis}}: specifies the interval between each copy on the {{PropertyData|Axis}} direction.
*{{PropertyData/fr|Interval Axis}} : spécifie l'intervalle entre chaque copie dans la direction {{PropertyData/fr|Axis}}.


Pour une matrice circulaire:
The number property, either X, Y, Z, or Polar, also includes the original object, so this number will be at least one.
* {{PropertyData/fr|Number Circles}}:
* {{PropertyData/fr|Radial distance}}:
* {{PropertyData/fr|Symmetry}}:
* {{PropertyData/fr|Tangential Distance}}:


Le nombre de propriétés, X, Y, Z ou Polar, inclut également l'objet d'origine. Ce nombre est donc au moins égal à un.
An interval is not a simple distance, but a vector (x, y, z). If more than one value is non-zero, the copy will be created in the main direction, but will also be displaced in the other non-zero directions.


Un intervalle n'est pas une simple distance, mais un vecteur (x, y, z). Si plusieurs valeurs sont non nulles, la copie sera créée dans la direction principale, mais sera également déplacée dans les autres directions non nulles.
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.


Par exemple, si l'{{PropertyData/fr|Intervalle X}} est égal à (2 m, 1 m, 1 m) et si {{PropertyData/fr|Nombre X}} est égal à 3, il créera 3 copies dans la direction X ; la première copie sera à la position d'origine ; la seconde sera déplacée de 2 m sur l'axe X, 1 m sur l'axe Y et 1 m sur l'axe Z ; la troisième copie sera déplacée de 4 m sur l'axe X, de 2 m sur l'axe Y et de 2 m sur l'axe Z. Chaque élément de la matrice sera déplacé légèrement d'un côté (direction Y) et vers le haut (direction Z) à côté de la direction 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.

La propriété {{PropertyData/fr|Axe d'intervalle}} fonctionne de la même manière. Si la forme d'origine repose sur le plan XY, la création d'un tableau polaire avec {{PropertyData/fr|Axe d'intervalle}} (0, 0, z) vous permet de réaliser des arrangements en spirale.


<div class="mw-translate-fuzzy">
==Script==
==Script==
{{Emphasis|Voir aussi:}} [[Draft API/fr|Draft API]] et [[FreeCAD Scripting Basics/fr|FreeCAD Scripts de base]].
L'outil matrice peut être utilisé dans une [[macros/fr|macro]] et dans la console Python en utilisant une des fonctions suivantes, et dépend du résultat recherché, simple copie de l'objet ou une copie paramétrique qui sera dépendante de l'objet original.
</div>


The Array tool can be used in [[macros|macros]] and from the [[Python|Python]] console by using two different functions, depending on if you wish to obtain standalone copies of your base object, or a parametric array object that stays linked to the original object.
L'outil matrice peut être utilisé dans une [[macros/fr|macro]] et dans la console [[Python/fr|Python]] en utilisant une des fonctions suivantes, et dépend du résultat recherché, simple copie de l'objet ou une copie paramétrique qui sera dépendante de l'objet original.


<div class="mw-translate-fuzzy">
=== Simple réseau ===
=== Simple réseau ===
La signature de base est la suivante :
Pour réseau rectangulaire:

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


Pour créer un réseau rectangulaire, procédure à suivre :
To create a rectangular array, use it like this:

{{Code|code=
{{Code|code=
array_list = array(objectslist, xvector, yvector, xnum, ynum)
array_list = array(objectslist, xvector, yvector, xnum, ynum)
Line 74: Line 97:
}}
}}


Pour réseau polaire, utilisez-le comme ceci :
<div class="mw-translate-fuzzy">

Pour réseau polaire:
</div>
{{Code|code=
{{Code|code=
array_list = array(objectslist, center, totalangle, totalnum)
array_list = array(objectslist, center, totalangle, totalnum)
}}
}}


* Crée un tableau à partir des objets contenus dans {{incode|objectlist}}, qui peut être un objet unique ou une liste d'objets.
<div class="mw-translate-fuzzy">
* Dans le cas d'un tableau rectangulaire, {{incode|xvector}}, {{incode|yvector}} et {{incode|zvector}} déterminent la distance entre les points de base de chaque copie, dans les directions X, Y et Z; et {{incode|xnum}}, {{incode|ynum}} et {{incode|znum}} sont le nombre de copies dans la direction respective.
* Crée un tableau avec les objets contenus dans la liste (qui peut être un objet ou une liste d'objets) avec, en cas de tableau rectangulaire, xnum d'itérations dans la direction x à la distance xvector entre les itérations, et même pour la direction y avec yvector et ynum, et même pour la direction z avec zvector et znum si cette version est utilisée. Dans le cas d'un réseau polaire, le centre est un vecteur, l'angle total est l'angle (en degrés) et le total est le nombre d'objets, y compris l'original.
* Dans le cas d'un réseau polaire, {{incode|center}} définit le centre du cercle du tableau, {{incode|totalangle}} est l'angle de l'arc en degrés pour couvrir les copies, et {{incode|totalnum} } est le nombre de copies à organiser autour du cercle, y compris l'objet d'origine.
* Cette fonction produit des copies autonomes de ou des objet(s) de base
* {{incode|array_list}} est renvoyé avec les nouvelles copies.
</div>
** {{incode|array_list}} est soit un objet unique, soit une liste d'objets, en fonction de l'entrée {{incode|objectlist}}.


This function internally uses {{incode|Draft.move()}} and {{incode|Draft.rotate()}} with <code>copy=True</code>.
Cette fonction utilise en interne {{incode|Draft.move()}} et {{incode|Draft.rotate()}} avec <code>copy = True</code>.

Exemple :


Example:
{{Code|code=
{{Code|code=
import FreeCAD, Draft
import FreeCAD, Draft
Line 99: Line 123:
=== Réseau paramétrique ===
=== Réseau paramétrique ===


The basic signature is as follows:
La signature de base est la suivante :

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


Pour un réseau rectangulaire, utilisez-le comme ceci :
<div class="mw-translate-fuzzy">

Pour un réseau rectangulaire:
</div>
{{Code|code=
{{Code|code=
Array = makeArray(baseobject, xvector, yvector, xnum, ynum, name="Array")
Array = makeArray(baseobject, xvector, yvector, xnum, ynum, name="Array")
Line 112: Line 136:
}}
}}


Pour un réseau polaire, utilisez-le comme ceci :
<div class="mw-translate-fuzzy">

Pour un réseau polaire:
</div>
{{Code|code=
{{Code|code=
Array = makeArray(baseobject, center, totalangle, totalnum, name="Array")
Array = makeArray(baseobject, center, totalangle, totalnum, name="Array")
}}
}}


* Crée un objet {{incode|Array}} à partir de {{incode|baseobject}} donné.
<div class="mw-translate-fuzzy">
* Dans le cas d'un tableau rectangulaire, {{incode|xvector}}, {{incode|yvector}} et {{incode|zvector}} déterminent la distance entre les points de base de chaque copie, dans les zones X, Y et Z directions; et {{incode|xnum}}, {{incode|ynum}} et {{incode|znum}} sont le nombre de copies dans la direction respective.
* Crée un réseau de l'objet sélectionné avec, dans le cas d'un réseau rectangulaire, xnum d'itérations dans la direction x à xvector distance entre les itérations, et même chose pour la direction y avec yvector et ynum, et pour zvector et znum si cette version est utilisée. Dans le cas d'un réseau polaire, le centre est un vecteur, totalangle est l'angle à couvrir (en degrés) et totalnum est le nombre d'objets, y compris l'original.
* Dans le cas d'un réseau polaire, {{incode|center}} définit le centre du cercle du tableau, {{incode|totalangle}} est l'angle de l'arc en degrés pour couvrir les copies, et {{incode|totalnum}} est le nombre de copies à organiser autour du cercle, y compris l'objet d'origine.
* Le résultat de cette fonction est un objet paramétrique Draft Array.
</div>


Exemple :
Exemple :
Line 138: Line 160:
}}
}}


{{Docnav/fr
{{Docnav/fr|[[Draft_Draft2Sketch/fr|Draft to Sketch]]|[[Draft_PathArray/fr|Path Array]]|[[Draft_Module/fr|Draft]]|IconL=Draft_Draft2Sketch.svg|IconC=Workbench_Draft.svg|IconR=Draft_PathArray.svg}}
|[[Draft_Draft2Sketch/fr|Draft vers Sketch]]
|[[Draft_LinkArray/fr|Link Array]]
|[[Draft_Module/fr|Draft]]
|IconL=Draft_Draft2Sketch.svg
|IconC=Workbench_Draft.svg
|IconR=Draft_LinkArray.svg
}}


{{Draft Tools navi/fr}}
{{Draft Tools navi/fr}}


{{Userdocnavi/fr}}
{{Userdocnavi/fr}}

{{clear}}
{{clear}}

Revision as of 14:09, 7 December 2019

Réseau Draft

Emplacement du menu
Draft → Réseau
Ateliers
Draft, Arch
Raccourci par défaut
Aucun
Introduit dans la version
-
Voir aussi
Chemin pour série de formes, Draft PointArray, Draft Clone

Description

L'outil Réseau (tableau ou copies multiples) crée une copie orthogonale (3 axes) ou un tableau polaire de l'objet sélectionné.

Cet outil peut être utilisé sur des formes 2D créées avec l'atelier Draft, mais également sur de nombreux types d'objets 3D, tels que ceux créés avec l'atelier Part ou l'atelier PartDesign.

Pour positionner les copies le long d'un chemin, utilisez l'outil PathArray ; pour positionner des copies à des points spécifiés, utilisez Draft PointArray ; pour créer des copies ou des clones et les placer manuellement, utilisez les outils Draft déplacer, Draft rotation, et Draft Clone.

Un tableau orthogonal et un tableau polaire d'un objet solide

Circular Array a été ajouté à FreeCAD 0.19

Un réseau circulaire à partir d'un objet solide, l'objet au centre

Utilisation

  1. Sélectionnez l'objet pour créer un réseau.
  2. Pressez le bouton Réseau Draft. Si aucun objet n'est sélectionné vous serez invité à en sélectionner un.
  3. L'objet Array est créé immédiatement. Vous devez modifier les propriétés du tableau pour modifier le nombre et la direction des copies créées.

Chaque élément du tableau est un clone exact de l'objet d'origine, mais l'ensemble du tableau est considéré comme une unité unique en termes de propriétés et d'apparence.

Options

Il n'y a pas d'options pour cet outil. Cela fonctionne avec l'objet sélectionné ou non.

Propriétés

  • DonnéesBase : spécifie l'objet à dupliquer dans le tableau.
  • DonnéesArray Type : spécifie le type de tableau à créer, soit "orthogonal" or "polaire".
  • DonnéesFuse : si elle est réglée sur true et que les copies se croisent, elles seront fusionnées en une seule forme.

Pour une matrice orthogonale:

  • DonnéesInterval X : L’intervalle entre chaque copie sur le premier axe
  • DonnéesInterval Y : L’intervalle entre chaque copie sur le deuxième axe
  • DonnéesInterval Z : L’intervalle entre chaque copie sur le troisième axe
  • DonnéesNumber X : Le nombre de copies sur le premier axe
  • DonnéesNumber Y : Le nombre de copies sur le deuxième axe
  • DonnéesNumber Z : Le nombre de copies sur le troisième axe

Pour une matrice polaire :

  • DonnéesAxis : La direction normale de la matrice circulaire
  • DonnéesCenter : Le point central de la matrice
  • DonnéesAngle : L'angle couvert par les copies
  • DonnéesNumber Polar : Le nombre de copies
  • DonnéesInterval Axis : spécifie l'intervalle entre chaque copie dans la direction DonnéesAxis.

Pour une matrice circulaire:

  • DonnéesNumber Circles:
  • DonnéesRadial distance:
  • DonnéesSymmetry:
  • DonnéesTangential Distance:

Le nombre de propriétés, X, Y, Z ou Polar, inclut également l'objet d'origine. Ce nombre est donc au moins égal à un.

Un intervalle n'est pas une simple distance, mais un vecteur (x, y, z). Si plusieurs valeurs sont non nulles, la copie sera créée dans la direction principale, mais sera également déplacée dans les autres directions non nulles.

Par exemple, si l'DonnéesIntervalle X est égal à (2 m, 1 m, 1 m) et si DonnéesNombre X est égal à 3, il créera 3 copies dans la direction X ; la première copie sera à la position d'origine ; la seconde sera déplacée de 2 m sur l'axe X, 1 m sur l'axe Y et 1 m sur l'axe Z ; la troisième copie sera déplacée de 4 m sur l'axe X, de 2 m sur l'axe Y et de 2 m sur l'axe Z. Chaque élément de la matrice sera déplacé légèrement d'un côté (direction Y) et vers le haut (direction Z) à côté de la direction X principale.

La propriété DonnéesAxe d'intervalle fonctionne de la même manière. Si la forme d'origine repose sur le plan XY, la création d'un tableau polaire avec DonnéesAxe d'intervalle (0, 0, z) vous permet de réaliser des arrangements en spirale.

Script

Voir aussi: Draft API et FreeCAD Scripts de base.

L'outil matrice peut être utilisé dans une macro et dans la console Python en utilisant une des fonctions suivantes, et dépend du résultat recherché, simple copie de l'objet ou une copie paramétrique qui sera dépendante de l'objet original.

Simple réseau

La signature de base est la suivante :

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

Pour créer un réseau rectangulaire, procédure à suivre :

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

Pour réseau polaire, utilisez-le comme ceci :

array_list = array(objectslist, center, totalangle, totalnum)
  • Crée un tableau à partir des objets contenus dans objectlist, qui peut être un objet unique ou une liste d'objets.
  • Dans le cas d'un tableau rectangulaire, xvector, yvector et zvector déterminent la distance entre les points de base de chaque copie, dans les directions X, Y et Z; et xnum, ynum et znum sont le nombre de copies dans la direction respective.
  • Dans le cas d'un réseau polaire, center définit le centre du cercle du tableau, totalangle est l'angle de l'arc en degrés pour couvrir les copies, et {{incode|totalnum} } est le nombre de copies à organiser autour du cercle, y compris l'objet d'origine.
  • array_list est renvoyé avec les nouvelles copies.
    • array_list est soit un objet unique, soit une liste d'objets, en fonction de l'entrée objectlist.

Cette fonction utilise en interne Draft.move() et Draft.rotate() avec copy = True.

Exemple :

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)

Réseau paramétrique

La signature de base est la suivante :

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

Pour un réseau rectangulaire, utilisez-le comme ceci :

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

Pour un réseau polaire, utilisez-le comme ceci :

Array = makeArray(baseobject, center, totalangle, totalnum, name="Array")
  • Crée un objet Array à partir de baseobject donné.
  • Dans le cas d'un tableau rectangulaire, xvector, yvector et zvector déterminent la distance entre les points de base de chaque copie, dans les zones X, Y et Z directions; et xnum, ynum et znum sont le nombre de copies dans la direction respective.
  • Dans le cas d'un réseau polaire, center définit le centre du cercle du tableau, totalangle est l'angle de l'arc en degrés pour couvrir les copies, et totalnum est le nombre de copies à organiser autour du cercle, y compris l'objet d'origine.

Exemple :

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)