Draft Réseau de points

From FreeCAD Documentation
Revision as of 11:50, 7 June 2020 by David69 (talk | contribs) (Created page with "Nouvel appel")

Draft Réseau de points

Emplacement du menu
Draft → Matrice de points
Ateliers
Draft, Arch
Raccourci par défaut
Aucun
Introduit dans la version
0.18
Voir aussi
Draft Réseau, Draft Chemin pour série de copies

Description

L'outil Draft PointArray place des copies d'une forme sélectionnée le long de divers points sélectionnés.

L'outil Réseau de points peut être utilisé sur n'importe quel objet ayant un Part TopoShape, c'est-à-dire des formes 2D créées avec l'Atelier Draft mais aussi des solides 3D créés avec les Atelier Part, Atelier PartDesign ou Atelier Arch.

Objet disposé à des points spécifiques

Utilisation

  1. Sélectionnez l'objet que vous souhaitez distribuer.
  2. Sélectionnez un point composé.
  3. Appuyez sur le bouton Draft Réseau de points.

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.

Composé ponctuel

L'objet composé ponctuel peut être créé de différentes manières.

En substance, l'objet à utiliser en tant que composé doit avoir l'une des trois propriétés suivantes: DonnéesComponents, DonnéesLinks ou DonnéesGeometry. A l'intérieur de ce composé, il doit y avoir être au moins un point avec les propriétés DonnéesX, DonnéesY et DonnéesZ.

Remarque: dans le cas de Draft Point et Part Point le réseau essaiera de positionner les copies en utilisant le DonnéesPlacement du point. Dans le cas d'un Sketcher Point, la position sera prise à partir de ses attributs internes X, Y et Z.

Remarque 2: pour Draft Point, son DonnéesPlacement suit toujours les valeurs de DonnéesX, DonnéesY, DonnéesZ. Il suffit donc de modifier ces valeurs pour produire le déplacement souhaité. Cependant, pour Part Point, le déplacement net est donné par la somme de DonnéesPlacement avec le vecteur de composantes DonnéesX, DonnéesY et DonnéesZ.

Options

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

Propriétés

Un Draft Réseau de points 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 de points possède les propriétés suivantes dans l'Éditeur de propriétés

Objects

  • DonnéesBase (Link): l'objet à dupliquer; il doit avoir une Part TopoShape.
  • DonnéesCount (Integer): (lecture seule) spécifie le nombre de copies dans le tableau. Cette propriété est en lecture seule car le nombre de copies est déterminé par le nombre de points à l'intérieur de DonnéesPoint Object.
  • DonnéesExtra Placement (Placement): spécifie un placement supplémentaire, traduction et rotation, qui sera appliqué à chaque copie du tableau. Chaque copie apparaît normalement avec la même rotation que l'objet DonnéesBase ; avec cette propriété, il est possible de fournir une rotation supplémentaire, ou de contrer la rotation d'origine, et de faire de petits ajustements à la position des copies. introduit dans la version 0.19
  • DonnéesPoint Object (Link): spécifie un objet composé avec des points qui indiquent où les copies de l'objet DonnéesBase apparaîtront. L'objet composé doit avoir l'une des propriétés DonnéesLinks, DonnéesComponents ou DonnéesGeometry et contenir au moins un élément avec DonnéesX, DonnéesY et DonnéesZ attributs.

Script

Voir aussi: Draft API et FreeCAD scripts de base.

L'outil PointArray peut être utilisé à l'intérieur d'une macro, et, à partir de la console Python , en utilisant la fonction suivante :

Appel plus ancien

point_array = makePointArray(base_object, point_object)

Nouvel appel

point_array = make_point_array(base_object, point_object, extra=None):
  • Crée un objet PointArray à partir de l'objet base en plaçant les copies le long de ptlst.
  • ptlst est un objet avec les attributs Geometry, Links ou Components qui définissent la position des copies.

Exemple:

import FreeCAD as App
import Draft

doc = App.newDocument()

polygon = Draft.make_polygon(3, radius=500.0)

p1 = Draft.make_point(App.Vector(1500, 0, 0))
p2 = Draft.make_point(App.Vector(2500, 0, 0))
p3 = Draft.make_point(App.Vector(2000, 1000, 0))

compound = doc.addObject("Part::Compound", "Compound")
compound.Links = [p1, p2, p3]

point_array = Draft.make_point_array(polygon, compound)
doc.recompute()