Draft Réseau orthogonal

From FreeCAD Documentation
Revision as of 10:16, 20 June 2021 by David69 (talk | contribs)

Draft Réseau orthogonal

Emplacement du menu
Modification → Array tools → Array
Ateliers
Draft, Arch
Raccourci par défaut
Aucun
Introduit dans la version
0.19
Voir aussi
Draft Réseau polaire, Draft Réseau circulaire, Draft Réseau selon une courbe, Draft Réseau lié selon une courbe, Draft Réseau de points, Draft Réseau lié selon des points

Description

La commande Draft Réseau orthogonal crée un réseau orthogonal (3 axes) à partir d'un objet sélectionné. La commande peut éventuellement créer un réseau de liens Link, qui est plus efficace qu'un réseau normal.

La commande peut être utilisée sur des objets 2D créés avec l'Atelier Draft ou l'Atelier Sketcher, mais aussi sur de nombreux objets 3D tels que ceux créés avec l'Atelier Part, l'Atelier PartDesign ou l'Atelier Arch.

Un réseau orthogonal Draft

Utilisation

  1. Sélectionnez l'objet que vous souhaitez dupliquer.
  2. Appuyez sur le bouton Draft Réseau orthogonal. Si aucun objet n'est sélectionné, vous serez invité à en sélectionner un.
  3. Le Panneau des tâches est lancé où vous pouvez sélectionner le nombre d'éléments dans chaque direction X, Y, Z et l'intervalle entre chaque élément créé.
  4. Vous pouvez cliquer sur la vue 3D pour configurer tous les nombres et intervalles et terminer la commande. Sinon, appuyez simplement sur Entrée ou sur le bouton OK pour terminer l'opération.

Options

  • Number of elements : éléments dans les directions X, Y et Z. Une copie de l'objet d'origine est toujours produite, donc ce nombre doit être au moins 1 dans toutes les directions.
  • X intervals : les valeurs de déplacement pour les copies dans la direction X. Pour créer des tableaux strictement rectangulaires, les valeurs Y et Z doivent être nulles (x, 0, 0).
  • Y intervals : les valeurs de déplacement pour les copies dans la direction Y. Pour créer des tableaux strictement rectangulaires, les valeurs X et Z doivent être nulles (0, y, 0).
  • Z intervals : les valeurs de déplacement pour les copies dans la direction Z. Pour créer des tableaux strictement rectangulaires, les valeurs X et Y doivent être nulles (0, 0, z).
  • Reset X, Y, Z : il réinitialise les vecteurs d'intervalle à un déplacement rectangulaire, c'est-à-dire (x, 0, 0), (0, y, 0) et (0, 0, z).
  • Fuse : si elle est cochée, les objets résultants dans le tableau fusionneront s'ils se touchent. Cela ne fonctionne que si Link array n'est pas coché.
  • Link array : s'il est coché, le tableau résultant sera un "tableau de liens". Ce tableau utilise en interne des objets App Link, il est donc plus efficace lors de la gestion de nombreuses copies de formes complexes. Cependant, dans ce cas, les objets ne peuvent pas être fusionnés ensemble.
  • Appuyez sur Echap ou sur le bouton Annuler pour annuler la commande en cours.

Notes

  • Chaque élément du réseau est un clone exact de l'objet d'origine mais l'ensemble du réseau est considéré comme une seule unité en termes de propriétés et d'apparence.
  • Cette commande crée le même objet "Réseau" paramétrique que celui créé avec le Draft Réseau polaire et Draft Réseau circulaire. Par conséquent, le réseau peut être converti en orthogonal, polaire ou circulaire en modifiant sa propriété DonnéesArray Type.

Preferences

See also: Preferences Editor and Draft Preferences.

  • To change the number of decimals used for the input of coordinates: Edit → Preferences... → General → Units → Units settings → Number of decimals.

Propriétés

See also: Property editor.

Un Draft Réseau orthogonal est dérivé de Part Feature (classe Part::Feature). Il partage donc toutes les propriétés de ce dernier. Outre les propriétés décrites dans Part Feature, le Réseau orthogonal possède les propriétés suivantes dans l'Éditeur de propriétés

Data

Link

The properties in this group are only available for Link arrays. See Std LinkMake for more information.

  • DonnéesScale (Float) : facteur d'échelle de l'ensemble du réseau.
  • DonnéesScale List (VectorList) : liste de N-vecteurs déterminant le facteur d'échelle individuel de chacun des N-éléments du réseau, où N est DonnéesCount.
  • DonnéesLink Transform (Bool) : si mis à false, il peut remplacer le placement de l'objet lié.

Circular array

The properties in this group are hidden for orthogonal arrays and polar arrays.

  • DonnéesNumber Circles (Integer) : nombre de couches circulaires à créer. L'objet DonnéesBase compte comme une couche. Il doit être d'au moins 1.
  • DonnéesRadial distance (Distance) : distance entre les couches circulaires.
  • DonnéesSymmetry (Integer) : un nombre qui indique les lignes de symétrie dans les couches circulaires. Ce nombre modifie la distribution des objets et le rendre très grand peut éliminer les couches les plus centrales.
  • DonnéesTangential Distance (Distance) : distance entre les copies dans le même calque circulaire.

Objects

  • DonnéesArray Type (Enumeration) : spécifie le type de réseau à créer "ortho", "polar" ou "circular".
  • DonnéesAxis Reference (LinkGlobal) : spécifie l'objet et l'arête qui peuvent être utilisés comme référence pour les réseaux polaires et circulaires. Par exemple, il peut s'agir du bord d'un Draft Fil ou d'un PartDesign Ligne de référence. Si cette propriété existe, elle remplace à la fois DonnéesAxis et DonnéesCenter, pour les réseaux polaires et circulaires.
  • DonnéesBase (Link) : spécifie l'objet à dupliquer dans le réseau.
  • DonnéesFuse (Bool) : par défaut réglé à false ; Si elle est réglée sur true et que les copies se croisent, elles seront fusionnées en une seule forme. Cela ne fonctionne que si le réseau initial n'était pas un "Link array" (réseau lié).

Orthogonal array

The properties in this group are hidden for circular arrays and polar arrays.

  • DonnéesInterval X (VectorDistance) : vecteur spécifiant l'intervalle entre chaque copie sur l'axe X.
  • DonnéesInterval Y (VectorDistance) : vecteur spécifiant l'intervalle entre chaque copie sur l'axe Y.
  • DonnéesInterval Z (VectorDistance) : vecteur spécifiant l'intervalle entre chaque copie sur l'axe Z.
  • DonnéesNumber X (Integer) : nombre de copies sur la direction X. L'objet DonnéesBase compte comme une copie. Il doit être d'au moins 1.
  • DonnéesNumber Y (Integer) : nombre de copies selon la direction Y.
  • DonnéesNumber Z (Integer) : nombre de copies selon la direction Z.

Polar array

The properties in this group are hidden for circular arrays and orthogonal arrays.

  • DonnéesAngle (Angle) : spécifie l'ouverture de l'arc circulaire à couvrir de copies; utilisez 360 pour couvrir un cercle entier.
  • DonnéesInterval Axis (VectorDistance) : distance et orientation de chaque copie dans la direction DonnéesAxis.
  • DonnéesNumber Polar (Integer) : nombre de copies dans la direction polaire.

Polar/circular array

The properties in this group are hidden for orthogonal arrays.

  • DonnéesAxis (Vector) : direction de l'axe autour de laquelle les éléments d'un réseau polaire ou circulaire sont créés.
  • DonnéesCenter (VectorDistance) : spécifie le point central du réseau polaire ou circulaire. DonnéesAxis passe par ce point. Pour les réseaux circulaires, le DonnéesCenter spécifie un décalage par rapport au DonnéesPlacement de l'objet DonnéesBase.

View

Link

The properties in this group, with the exception of the inherited property, are only available for Link arrays. See Std LinkMake for more information.

  • VueDraw Style (Enumeration)
  • VueLine Width (FloatConstraint)
  • VueOverride Material (Bool)
  • VuePoint Size (FloatConstraint)
  • VueSelectable (Bool): this is an inherited property that appears in the Selection group for other arrays
  • VueShape Material (Material)

Base

The properties in this group, with the exception of the inherited property, are only available for Link arrays. See Std LinkMake for more information.

  • Vue (Hidden)Child View Provider (PersistentObject)
  • Vue (Hidden)Material List (MaterialList)
  • Vue (Hidden)Override Color List (ColorList)
  • Vue (Hidden)Override Material List (BoolList)
  • Vue (Hidden)Proxy (PythonObject): this is an inherited property.

Display Options

The properties in this group are inherited properties. See Part Feature for more information.

  • VueBounding Box (Bool): this property is not inherited by Link arrays.
  • VueDisplay Mode (Enumeration): for Link arrays it can be Link or ChildView. For other arrays it can be: Flat Lines, Shaded, Wireframe or Points
  • VueShow In Tree (Bool)
  • VueVisibility (Bool)

Draft

  • VuePattern (Enumeration): not used.
  • VuePattern Size (Float): not used.

Object style

The properties in this group are not inherited by Link arrays.

Script

Parametric array

L'outil Réseau orthogonal peut être utilisé dans une macro et dans la console Python avec la fonction suivante :

The main method:

array = make_array(base_object, arg1, arg2, arg3, arg4=None, arg5=None, arg6=None, use_link=True)

The wrappers for orthogonal arrays are:

array = make_ortho_array(base_object,
                         v_x=App.Vector(10, 0, 0), v_y=App.Vector(0, 10, 0), v_z=App.Vector(0, 0, 10),
                         n_x=2, n_y=2, n_z=1,
                         use_link=True)
array = make_ortho_array2d(base_object,
                           v_x=App.Vector(10, 0, 0), v_y=App.Vector(0, 10, 0),
                           n_x=2, n_y=2,
                           use_link=True)

The wrappers for rectangular arrays are:

array = make_rect_array(base_object,
                        d_x=10, d_y=10, d_z=10,
                        n_x=2, n_y=2, n_z=1,
                        use_link=True)
array = make_rect_array2d(base_object,
                          d_x=10, d_y=10,
                          n_x=2, n_y=2,
                          use_link=True)
  • Crée un "Array" objet à partir de base_object.
    • Au lieu d'une référence à un objet, base_object peut également être le Label (chaîne) d'un objet existant dans le document courant.
    • Les vecteurs v_x, v_y et v_z déterminent la distance entre les points de base de chaque copie, dans les directions X, Y et Z. n_x, n_y et n_z sont le nombre de copies dans la direction respective.
    • Si use_link est True, le type de réseau créé sera un réseau Link dont les éléments sont des instances de App Link au lieu de simples copies.
    • make_ortho_array2d ignore le composant Z, donc le résultat sera un tableau 2D dans le plan XY.

Exemple :

import FreeCAD as App
import Draft

doc = App.newDocument()

rect = Draft.make_rectangle(1500, 500)
v_x = App.Vector(1600, 0, 0)
v_y = App.Vector(0, 600, 0)

array = Draft.make_ortho_array2d(rect, v_x, v_y, 3, 4)
doc.recompute()

Non-parametric array

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

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

Exemple :

import FreeCAD as App
import Draft

doc = App.newDocument()

rect = Draft.make_rectangle(1500, 500)
v_x = App.Vector(1600, 0, 0)
v_y = App.Vector(0, 600, 0)

Draft.array(rect, v_x, v_y, 3, 4)
doc.recompute()