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 • ‎polski • ‎português do Brasil • ‎română • ‎svenska • ‎čeština • ‎русский
Arrow-left.svg Page précédente : Draft CircularArray.svg Réseau circulaire

Draft PathArray.svg Draft Réseau selon une courbe

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

Description

La commande Draft PathArray.svg Draft Réseau selon une courbe crée un réseau régulier à partir d'un objet sélectionné en plaçant des copies le long d'un chemin. Utilisez la commande Draft Réseau lié selon une courbe pour créer un réseau Link plus efficace à la place. À l'exception du type de réseau créé, réseau de liens ou réseau régulier, la commande Draft Réseau lié selon une courbe est identique à cette commande.

Ces deux commandes peuvent être utilisées 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.

Draft PathArray Example.png

Un réseau Draft selon une courbe

Utilisation

  1. Sélectionnez l'objet que vous souhaitez mettre en réseau.
  2. Ajoutez l'objet courbe à la sélection. Il est également possible de sélectionner des arêtes à la place. Les arêtes doivent appartenir au même objet. Elles doivent être connectées et doivent être sélectionnées dans le bon ordre.
  3. Il existe plusieurs façons de lancer la commande :
    • Appuyez sur le Draft PathArray.svg Réseau selon une courbe.
    • Sélectionnez l'option Modification → Array tools → Draft PathArray.svg Réseau selon une courbe dans le menu.
  4. Le réseau est créé.
  5. Vous pouvez éventuellement modifier les propriétés du réseau dans l'Éditeur de propriétés.

Alignement

L'alignement des éléments d'un Draft Réseau selon une courbe dépend des propriétés du réseau et de l'orientation de l'objet source. La position de l'objet source est ignorée : pour les besoins du réseau, les valeurs x, y et z sont fixées à 0. Si la propriété DonnéesAlign du réseau est définie à false, l'orientation des éléments du réseau est identique à celle de l'objet source. Si elle a pour valeur true, l'axe X du système de coordonnées local de chaque élément placé est tangent à la trajectoire. Les axes Y et Z des systèmes de coordonnées locaux dépendent de la propriété DonnéesAlign Mode du réseau. Les autres propriétés du réseau impliquées dans l'alignement comprennent DonnéesTangent Vector, DonnéesForce Vertical et DonnéesVertical Vector.

Draft PathArray example2.png

3 réseaux basés sur la même courbe non planaire. De gauche à droite : Align est false, Align à true pour Align Mode Original et Align à true pour Align Mode Frenet.

.

Mode d'alignement

Trois modes sont disponibles :

Original

Ce mode se rapproche le plus du mode unique DonnéesAlign Mode disponible dans la version 0.18. Il s'appuie sur un vecteur normal fixe. Si le chemin est planaire, ce vecteur est perpendiculaire au plan du chemin, sinon un vecteur par défaut, l'axe Z positif, est utilisé. À partir de ce vecteur normal et du vecteur tangent local (l'axe X local), un produit vectoriel est calculé. Ce nouveau vecteur est utilisé comme axe Z local. L'orientation de l'axe Y local est déterminée à partir des axes X et Z locaux.

Frenet

Ce mode utilise le vecteur normal local dérivé de la trajectoire à chaque placement d'élément. Si ce vecteur ne peut pas être déterminé (par exemple dans le cas d'un segment droit), un vecteur par défaut, toujours l'axe Z positif, est utilisé à la place. Avec ce vecteur et le vecteur tangent local, le système de coordonnées local est déterminé en utilisant la même procédure que dans le paragraphe précédent.

Tangent

Ce mode est similaire à DonnéesAlign Mode. Original mais offre la possibilité de pré-rotation de l'objet source en spécifiant un DonnéesTangent Vector.

Force Vertical et Vertical Vector

Ces propriétés ne sont disponibles que si DonnéesAlign Mode est Original ou Tangent. Si DonnéesForce Vertical est défini sur true, le système de coordonnées local est calculé d'une manière différente. DonnéesVertical Vector est utilisé comme vecteur normal fixe. Un produit vectoriel est à nouveau calculé à partir de ce vecteur normal et du vecteur tangent local (l'axe X local). Mais ce vecteur est maintenant utilisé comme l'axe Y local. L'orientation de l'axe Z local est déterminée à partir des axes X et Y locaux.

L'utilisation de ces propriétés peut être nécessaire si l'un des bords du chemin est (presque) parallèle à la normale par défaut du chemin.

Propriétés

Voir aussi: Éditeur de propriétés

Un objet Draft Réseau selon une courbe est dérivé d'un objet Part Feature et hérite de toutes ses propriétés (à l'exception de certaines propriétés Vue qui ne sont pas héritées par les réseaux Link). Les propriétés suivantes sont supplémentaires, sauf indication contraire :

Données

Link

Les propriétés de ce groupe ne sont disponibles que pour les réseaux de liens. Voir Std Créer un lien pour plus d'informations.

  • DonnéesScale (Float)
  • Données (caché)Scale Vector (Vector)
  • DonnéesScale List (VectorList)
  • Données (caché)Visibility List (BoolList)
  • Données (caché)Placement List (PlacementList)
  • Données (caché)Element List (LinkList)
  • Données (caché)_ Link Touched (Bool)
  • Données (caché)_ Child Cache (LinkList)
  • Données (caché)Colored Elements (LinkSubHidden)
  • DonnéesLink Transform (Bool)

Alignment

  • DonnéesAlign (Bool) : spécifie si les éléments du réseau sont alignés ou non le long du chemin. Si elle vaut false, toutes les autres propriétés de ce groupe, à l'exception de DonnéesExtra Translation ne s'appliquent pas et sont masquées.
  • DonnéesAlign Mode (Enumeration) : spécifie le mode d'alignement, qui peut être Original, Frenet ou Tangent.
  • DonnéesExtra Translation (VectorDistance) : spécifie un déplacement supplémentaire pour chaque élément le long du chemin.
  • DonnéesForce Vertical (Bool) : spécifie s'il faut remplacer la direction normale par défaut par la valeur de DonnéesVecteur Vertical. Utilisé uniquement si DonnéesAlign Mode est Original ou Tangent. introduced in version 0.19
  • DonnéesTangent Vector (Vector) : spécifie le vecteur d'alignement. Utilisé uniquement si DonnéesAlign Mode est Tangent. Introduit dans la version 0.19
  • DonnéesVertical Vector (Vector) : spécifie le remplacement de la direction normale par défaut. Utilisé uniquement si DonnéesVertical Vector est true. Introduit dans la version 0.19

Objects

  • DonnéesBase (LinkGlobal) : spécifie l'objet à dupliquer dans le réseau.
  • DonnéesCount (Integer) : spécifie le nombre d'éléments dans le réseau.
  • DonnéesExpand Array (Bool) : indique s'il faut développer le réseau dans la Vue en arborescence pour permettre la sélection de ses éléments individuels. Disponible uniquement pour les réseaux de type lien (Link).
  • DonnéesPath Object (LinkGlobal) : spécifie l'objet à utiliser pour le chemin. Il doit contenir Edges dans sa Part TopoShape.
  • DonnéesPath Subelements (LinkSubListGlobal) : spécifie une liste d'arêtes de DonnéesPath Object. Si elle est renseignée, seules ces arêtes sont utilisées pour le chemin.

Vue

Link

Les propriétés de ce groupe, à l'exception de la propriété héritée, ne sont disponibles que pour les réseaux liens (Link). Voir Std Créer un lien pour plus d'informations.

  • VueDraw Style (Enumeration)
  • VueLine Width (FloatConstraint)
  • VueOverride Material (Bool)
  • VuePoint Size (FloatConstraint)
  • VueSelectable (Bool) : il s'agit d'une propriété héritée qui apparaît dans le groupe Sélection pour d'autres réseaux.
  • VueShape Material (Material)

Base

Les propriétés de ce groupe, à l'exception de la propriété héritée, ne sont disponibles que pour les réseaux liens (Link). Voir Std Créer un lien pour plus d'informations.

  • Vue (caché)Child View Provider (PersistentObject)
  • Vue (caché)Material List (MaterialList)
  • Vue (caché)Override Color List (ColorList)
  • Vue (caché)Override Material List (BoolList)
  • Vue (caché)Proxy (PythonObject): il s'agit d'une propriété héritée.

Display Options

Les propriétés de ce groupe sont des propriétés héritées. Voir Part Feature pour plus d'informations.

  • VueBounding Box (Bool): cette propriété n'est pas héritée par les réseaux de liens (Link).
  • VueDisplay Mode (Enumeration): pour les réseaux de liens, il peut s'agir de Link ou ChildView. Pour les autres réseaux, il peut s'agir de : Flat Lines, Shaded, Wireframe ou Points
  • VueShow In Tree (Bool)
  • VueVisibility (Bool)

Draft

  • VuePattern (Enumeration) : non utilisé.
  • VuePattern Size (Float) : non utilisé.

Object style

Les propriétés de ce groupe ne sont pas héritées par les réseaux de liens.

Script

Voir aussi: Autogenerated API documentation et Débuter avec les scripts FreeCAD.

Pour créer un réseau selon une courbe, utilisez la méthode make_path_array (Introduit dans la version 0.19) de l'atelier Draft. Cette méthode remplace la méthode dépréciée makePathArray.

path_array = make_path_array(base_object, path_object,
                             count=4, extra=App.Vector(0, 0, 0), subelements=None,
                             align=False, align_mode="Original", tan_vector=App.Vector(1, 0, 0),
                             force_vertical=False, vertical_vector=App.Vector(0, 0, 1),
                             use_link=True)
  • base_object est l'objet à mettre en réseau. Il peut également s'agir du Label (chaîne de caractères) d'un objet du document courant.
  • path_object est l'objet courbe. Il peut également s'agir du Label (chaîne de caractères) d'un objet du document courant.
  • count est le nombre d'éléments dans le réseau.
  • extra est un vecteur qui déplace chaque élément.
  • subelements est une liste d'arêtes de path_object, par exemple ["Bord1", "Bord2"]. Si elle est renseignée, seules ces arêtes sont utilisées pour le chemin.
  • Si align est True les éléments sont alignés le long de la courbe en fonction de la valeur de align_mode, qui peut être "Original", "Frenet" ou "Tangent".
  • tan_vector est un vecteur unitaire qui définit la direction tangente locale des éléments le long de la courbe. Il est utilisé lorsque align_mode est "Tangent".
  • Si force_vertical est True vertical_vector est utilisé pour la direction Z locale des éléments le long de la courbe. Il est utilisé lorsque align_mode est "Original" ou "Tangent".
  • Si use_link est True, les éléments créés sont des App Links au lieu de copies ordinaires.
  • path_array est restitué avec l'objet réseau créé.

Exemple :

import FreeCAD as App
import Draft

doc = App.newDocument()

p1 = App.Vector(500, -1000, 0)
p2 = App.Vector(1500, 1000, 0)
p3 = App.Vector(3000, 500, 0)
p4 = App.Vector(4500, 100, 0)
spline = Draft.make_bspline([p1, p2, p3, p4])
obj = Draft.make_polygon(3, 500)

path_array = Draft.make_path_array(obj, spline, 6)
doc.recompute()

wire = Draft.make_wire([p1, -p2, -p3, -p4])
path_array2 = Draft.make_path_array(obj, wire, count=3, extra=App.Vector(0, -500, 0), subelements=["Edge2", "Edge3"], align=True, force_vertical=True)
doc.recompute()


Arrow-left.svg Page précédente : Draft CircularArray.svg Réseau circulaire