Draft Réseau de points

From FreeCAD Documentation
Revision as of 11:40, 7 June 2020 by David69 (talk | contribs) (Created page with "{{Emphasis|Remarque 2:}} pour {{Button|16px Draft Point}}, son {{PropertyData|Placement}} suit toujours les valeurs de {{PropertyDa...")

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

A PointArray is derived from a Part Feature (Part::Feature class), therefore it shares all the latter's properties. In addition to the properties described in Part Feature, the PointArray has the following properties in the property editor.

  • DonnéesBase: spécifie l'objet à dupliquer.
  • DonnéesCount: (en lecture seule) spécifie le nombre de copies de l'objet de base. Ce nombre dépendra du nombre de Point Draft dans le composé.
  • DonnéesPointList: spécifie un objet composé avec des objets ponctuels indiquant l'emplacement des copies de l'objet DonnéesBase.

DonnéesBase objet qui apparaît. L'objet composé doit avoir un attribut DonnéesLinks, DonnéesComponets, ou DonnéesGeometry. Chacun des objets à l'intérieur du composé devrait être un Draft Points qui a des attributs DonnéesX, DonnéesY, et DonnéesZ . Les composés pourraient être créés avec les attributs Part Créer un composé (DonnéesLinks) ou avec les attributs Draft Upgrade (DonnéesComponets).

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 :

Older call

point_array = makePointArray(base_object, point_object)

New call

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()