Draft Réseau

From FreeCAD Documentation
Revision as of 10:33, 5 April 2019 by Mario52 (talk | contribs)

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.

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.

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

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)