Draft Réseau

From FreeCAD Documentation
Revision as of 10:00, 5 April 2019 by Mario52 (talk | contribs) (Created page with "Il n'y a pas d'options pour cet outil. Cela fonctionne avec l'objet sélectionné ou non.")

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

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.

Properties

  • DonnéesBase: specifies the object to duplicate in the array.
  • DonnéesArray Type: specifies the type of array to create, either "ortho" or "polar".
  • DonnéesFuse: if it is true, and the copies intersect with each other, they will be fused together into a single shape.

For orthogonal arrays:

  • DonnéesInterval X: specifies the interval between each copy on the X axis.
  • DonnéesInterval Y: specifies the interval between each copy on the Y axis.
  • DonnéesInterval Z: specifies the interval between each copy on the Z axis.
  • DonnéesNumber X: specifies the number of copies on the X axis.
  • DonnéesNumber Y: specifies the number of copies on the Y axis.
  • DonnéesNumber Z: specifies the number of copies on the Z axis.

For polar arrays:

  • DonnéesAxis: specifies the normal direction of the array circle.
  • DonnéesCenter: specifies the center point of the array circle.
  • DonnéesAngle: specifies the aperture of the circular arc to cover with copies; use 360 to cover an entire circle.
  • DonnéesNumber Polar: specifies the number of copies to place in the circular arrangement.
  • DonnéesInterval Axis: specifies the interval between each copy on the DonnéesAxis direction.

The number property, either X, Y, Z, or Polar, also includes the original object, so this number will be at least one.

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.

For example, if DonnéesInterval X is (2 m, 1 m, 1 m), and DonnéesNumber 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.

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

Script

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.

The Array tool can be used in macros and from the 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.

Simple réseau

Pour réseau rectangulaire:

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

To create a rectangular array, use it like this:

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

Pour réseau polaire:

array_list = array(objectslist, center, totalangle, totalnum)
  • 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.
  • Cette fonction produit des copies autonomes de ou des objet(s) de base

This function internally uses Draft.move() and Draft.rotate() with copy=True.

Example:

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

The basic signature is as follows:

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

Pour un réseau rectangulaire:

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:

Array = makeArray(baseobject, center, totalangle, totalnum, name="Array")
  • 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.
  • Le résultat de cette fonction est un objet paramétrique Draft Array.

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)