Draft Réseau selon une courbe

From FreeCAD Documentation
Jump to navigation Jump to search
This page is a translated version of the page Draft PathArray and the translation is 100% complete.
Other languages:
Deutsch • ‎English • ‎Türkçe • ‎español • ‎français • ‎italiano • ‎română • ‎svenska • ‎čeština • ‎русский
Arrow-left.svg Page précédente : Draft LinkArray.svg Link Array

Draft PathArray.svg Draft Réseau selon une courbe

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


Description

L'outil Draft PathArray.svg Draft Chemin pour série de copies place des copies d'une forme sélectionnée le long d'un chemin sélectionné, le chemin peut être un Draft Fil ou une ou plusieurs Draft BSpline et bords 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.

Pour positionner des copies dans un tableau orthogonal, utilisez Draft Array; 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 Draft Move, Draft Rotate et Draft Clone.

Draft PathArray Example.png

Objet disposé le long d'un chemin


Utilisation

  1. Sélectionnez l'objet que vous souhaitez distribuer.
  2. Sélectionnez un tracé ou n'importe quel ligne le sur laquelle les formes seront copiées.
  3. Cliquez le bouton Draft PathArray.svg Draft PathArray.
  4. 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 seule unité en termes de propriétés et d'apparence.

L'objet de base doit être centré autour de l'origine, même si le chemin commence ailleurs.

Options

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

Propriétés

  • DonnéesBase: spécifie l'objet à dupliquer dans le chemin.
  • DonnéesPathObj: spécifie le chemin de l'objet
  • DonnéesPathSubs: spécifie les sous-éléments (bords) du chemin. Cette propriété n'apparaît pas encore dans l'éditeur de propriétés.
  • DonnéesCount: spécifie le nombre de copies de l'objet de base
  • DonnéesAlign: s'il est fixé sur True, les copies sont alignées sur le chemin. sinon, ils restent dans leur orientation par défaut.
Note: dans certains cas, la forme apparaîtra à plat. En réalité, elle peut s'être déplacée dans l'espace 3D. Par conséquent, au lieu d'utiliser une vue à plat, changez la vue en axonométrie.
  • DonnéesXlate: spécifie l'adaptation du vecteur (x, y, z) pour déplacer chaque copie le long du chemin.
Note: lorsque DonnéesAlign est True, le vecteur est relatif aux coordonnées locales tangentes, normales ou binormales; sinon, le vecteur est relatif aux coordonnées globales.

Script

See also: Draft API et FreeCAD Scripts de base.

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=[])
  • Crée un objet PathArray à partir de baseobject, en plaçant autant de copies que count le long de pathobject.
    • Si pathobjsubs est indiqué, il s'agit d'une liste de sous-objets de pathobject et les copies sont créées le long de ce chemin plus court.
  • Si xlate est indiqué, il s'agit d'un FreeCAD.Vector qui indique un déplacement supplémentaire pour déplacer le point de base des copies.
  • Si align est True, les copies sont alignées sur la tangente, normale ou binormale de pathobject au point où la copie est placée.

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 DonnéesAlign est False, le placement des copies de PathArray est assez facile à comprendre; elles sont simplement déplacées vers une position différente dans leur orientation d'origine.

Align false

Objet disposé le long d'un chemin fermé dans l'orientation d'origine


Lorsque DonnéesAlign est True, le positionnement des formes devient un peu plus complexe:

  1. Premièrement, le système de coordonnées Frenet est construit sur le chemin: X est tangente, Z est normale, Y est binormale.
  2. Ensuite, l'objet d'origine est copié 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 tracé.
Patharray alignment annotated.png

Objet disposé le long d'un sentier fermé; description des composants et chemin


Les images suivantes montrent comment le tableau est produit, en fonction du positionnement du plan et du chemin.

Chemin sur le Plan XY

Patharray alignment.png

Objet disposé le long d’un chemin fermé qui est aligné sur le plan XY plane


Chemin sur le Plan XZ

Patharray alignment-XZ.png

Objet disposé le long d'un trajet fermé aligné sur le plan XZ


Chemin sur le Plan YZ

Patharray alignment-YZ.png

Objet disposé le long d'un trajet fermé aligné sur le plan YZ


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.

Editor: (Remerciements à @DeepSOIC pour ces explications)

Modes d'alignement et options supplémentaires introduits dans la v0.19

Le mode Original (par défaut) est le mode d'alignement historique comme dans la version 0.18. Ce n'est pas vraiment l'alignement Frenet. Le mode original utilise le paramètre normal de Draft.getNormal (ou la valeur par défaut) en tant que constante - il ne calcule pas de courbe normale. X suit la courbe tangente, Y est le paramètre normal, Z est X.Cross(Y).

Le mode Tangent est similaire à Original mais inclut une rotation pour aligner l'objet Base de X sur le TangentVector avant de placer des copies. Après la rotation, Tangent se comporte de la même manière que Original. Dans les versions précédentes, cette rotation se serait effectuée manuellement avant d'appeler PathArray.

Le mode Frenet oriente les copies vers un système de coordonnées le long du chemin. X est tangent à la courbe, Y est la courbe normale, Z est la courbe binormale. Si une normale ne peut pas être calculée (ex une ligne droite), la valeur par défaut est utilisée.

L'option ForceVertical s'applique aux modes Original et Tangent. Quand cela est appliqué, le paramètre normal de Draft.getNormal est ignoré. X suit la courbe tangente, Z est la propriété VerticalVector et Y est X.Cross(Z).

Chaîne de vélo en version 18 - Mode original

Align false


Traverses de chemin de fer - Mode Tangent + ForceVertical

Align false


Mode Frenet

Align false


Arrow-left.svg Page précédente : Draft LinkArray.svg Link Array