Draft PathArray/fr: Difference between revisions

From FreeCAD Documentation
mNo edit summary
(Created page with "L'outil PathArray 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...")
Line 15: Line 15:
L'outil PathArray place des copies d'une forme sélectionnée le long d'un chemin sélectionné, le chemin peut être un [[Draft Wire/fr|fil]] ou une ou plusieurs [[Draft BSpline/fr|,arêtes]] et bors similaires.
L'outil PathArray place des copies d'une forme sélectionnée le long d'un chemin sélectionné, le chemin peut être un [[Draft Wire/fr|fil]] ou une ou plusieurs [[Draft BSpline/fr|,arêtes]] et bors similaires.


The PathArray tool can be used on 2D shapes created with the [[Draft Workbench]], but can also be used on many types of 3D objects such as those created with the [[Part Workbench|Part]], [[PartDesign Workbench|PartDesign]], or [[Arch Workbench|Arch Workbench]]es.
L'outil PathArray peut être utilisé sur des formes 2D créées avec l'atelier [[Draft Workbench/fr|Draft]], mais également sur de nombreux types d'objets 3D, tels que ceux créés avec les ateliers [[Part Workbench/fr|Part]], [[PartDesign Workbench/fr|PartDesign]] ou [[Arch Workbench/fr|Arch]].


To position copies in an orthogonal array use [[Draft Array|Draft Array]]; to position copies at specified points use [[Draft PointArray|Draft PointArray]]; to create copies or clones, and manually place them use [[Draft Move|Draft Move]], [[Draft Rotate|Draft Rotate]], and [[Draft Clone|Draft Clone]].
To position copies in an orthogonal array use [[Draft Array|Draft Array]]; to position copies at specified points use [[Draft PointArray|Draft PointArray]]; to create copies or clones, and manually place them use [[Draft Move|Draft Move]], [[Draft Rotate|Draft Rotate]], and [[Draft Clone|Draft Clone]].

Revision as of 08:27, 2 September 2019

Draft PathArray

Emplacement du menu
Draft → PathArray
Ateliers
Draft, Arch
Raccourci par défaut
Aucun
Introduit dans la version
0.14
Voir aussi
Draft Array, Draft LinkArray, Draft PointArray

Description

L'outil PathArray place des copies d'une forme sélectionnée le long d'un chemin sélectionné, le chemin peut être un fil ou une ou plusieurs ,arêtes et bors similaires.

L'outil PathArray 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 les ateliers Part, PartDesign ou Arch.

To position copies in an orthogonal array use Draft Array; to position copies at specified points use Draft PointArray; to create copies or clones, and manually place them use Draft Move, Draft Rotate, and Draft Clone.

Object arranged along a path

Utilisation

  1. Créez un objet de forme que vous souhaitez distribuer. Vous obtiendrez les meilleurs résultats si votre objet est centré sur l'origine, même si le chemin commence ailleurs.
  2. Sélectionnez l'objet que vous souhaitez distribuer.
  3. Sélectionnez un tracé le long de laquelle les formes seront copiées. -ou-
  4. Sélectionner les bords d'un objet qui servirons de chemin.
  5. Pressez le bouton Draft PathArray.

Each element in the array is an exact clone of the original object, but the entire array is considered a single unit in terms of properties and appearance.

The base object should be centred around the origin, even if the path starts somewhere else.

Options

  • Le tableau commence avec des copies de formes qui ne sont pas alignées sur le chemin, ni traduites vers un nouvel emplacement par défaut. Vous pouvez ensuite changer le nombre, l'alignement et/ou l'adaptation des vecteurs dans les propriétés.

Propriétés

  • DonnéesBase: L'objet shape
  • DonnéesPathObj: Le chemin de l'objet
  • DonnéesPathSubs: Les sous-éléments (bords) de l'objet trajectoire pour être utilisé comme chemin
  • DonnéesCount: Le nombre de copies du shape
  • DonnéesXlate: L'adaptation du vecteur
  • DonnéesAlign: True aligne le shape sur le chemin, False laisse le shape sur une orientation par défaut.

Script

L'outil PathArray peut être utilisé dans une macro et dans la console python avec la commande

PathArray = makePathArray(baseobject, pathobject, count, xlate=None, align=False, pathobjsubs=[])
  • Place le nombre de copies d'un objet le long d'un chemin ou sous-objet d'un objet qui servira de chemin. Transforme éventuellement chaque copie avec FreeCAD.Vector le vecteur XLATE donne la direction et la distance pour ajuster la différence entre le centre de la forme vers le point de référence de la forme. Aligne éventuellement BaseObject à la tangente/normale/binormale du chemin.

Exemple:

import FreeCAD,Draft

p1 = FreeCAD.Vector(500, -1000, 0)
p2 = FreeCAD.Vector(1500, 1000, 0)
p3 = FreeCAD.Vector(3000, 500, 0)
p4 = FreeCAD.Vector(4500, 100, 0)
spline = Draft.makeBSpline([p1, p2, p3, p4])
object = Draft.makePolygon(3, 500)

PathArray = Draft.makePathArray(object, spline, 6)

Explication technique

Quand "Align = false", la logique de PathArray est assez facile à comprendre.

Align false
Align false
Align false
Align false

Object arranged along a closed path in the original orientation

Lorsque "Align = True" la logique est un peu plus difficile à saisir:

  1. Construire un système de coordonnées Frenet sur le chemin (X est tangent, Z est normal, Y est binormal).
  2. Copiez l'objet d'origine dans chaque système de coordonnées sur le trajet, de sorte que l'origine globale corresponde à l'origine du système de coordonnées sur le trajet.

Object arranged along a closed path; description of components and path

C'est beaucoup plus facile à comprendre avec des images. Les images suivantes montrent comment le tableau est produit, en fonction du plan et du chemin.

XY Plane
XY Plane

Chemin sur le Plan XY

XZ Plane
XZ Plane

Chemin sur le Plan XZ

YZ Plane
YZ Plane

Chemin sur le Plan YZ

Object arranged along a closed path which is aligned to the XY plane

Path on XZ Plane:

Object arranged along a closed path which is aligned to the XZ plane

Path on YZ Plane:

Object arranged along a closed path which is aligned to the YZ plane

L'avantage évident de cette logique est que lorsque vous réorientez le chemin mais pas l'objet, le résultat est cohérent: l'objet reste aligné sur le chemin tel qu'il était avant de réorienter le chemin.

(Remerciements à @DeepSOIC pour ces explications)