Draft PointArray/fr: Difference between revisions

From FreeCAD Documentation
No edit summary
(Updating to match new version of source page)
Line 23: Line 23:
L'outil {{Button|[[Image:Draft_PointArray.svg|16px]] [[Draft PointArray/fr|Draft PointArray]]}} place des copies d'une forme sélectionnée le long de divers points sélectionnés.
L'outil {{Button|[[Image:Draft_PointArray.svg|16px]] [[Draft PointArray/fr|Draft PointArray]]}} place des copies d'une forme sélectionnée le long de divers points sélectionnés.


<div class="mw-translate-fuzzy">
L'outil Matrice de points peut être utilisé sur des formes 2D créées avec [[Draft Workbench/fr|Atelier Draft]], mais également sur de nombreux types d'objets 3D, tels que ceux créés avec [[Part Workbench/fr|Atelier Part]], [[PartDesign Workbench/fr|Atelier PartDesign]] ou [[Arch Workbench/fr|Atelier Arch]].
L'outil Matrice de points peut être utilisé sur des formes 2D créées avec [[Draft Workbench/fr|Atelier Draft]], mais également sur de nombreux types d'objets 3D, tels que ceux créés avec [[Part Workbench/fr|Atelier Part]], [[PartDesign Workbench/fr|Atelier PartDesign]] ou [[Arch Workbench/fr|Atelier Arch]].
</div>


<div class="mw-translate-fuzzy">
Pour positionner les copies dans un tableau orthogonal, utilisez [[Draft Array/fr|Matrice Draft]]. Pour positionner les copies le long d’un chemin, utilisez [[Draft PathArray/fr|Série de copies Draft]]. Pour créer des copies ou des clones et les placer manuellement, utilisez [[Draft Move/fr|Déplacer Draft]], [[Draft Rotate/fr|Rotation Draft]] et [[Draft Clone/fr|Clone Draft]].
Pour positionner les copies dans un tableau orthogonal, utilisez [[Draft Array/fr|Matrice Draft]]. Pour positionner les copies le long d’un chemin, utilisez [[Draft PathArray/fr|Série de copies Draft]]. Pour créer des copies ou des clones et les placer manuellement, utilisez [[Draft Move/fr|Déplacer Draft]], [[Draft Rotate/fr|Rotation Draft]] et [[Draft Clone/fr|Clone Draft]].
</div>


[[Image:Draft_PointArray_Example.png|400px]]
[[Image:Draft_PointArray_Example.png|400px]]
Line 32: Line 36:
==Utilisation==
==Utilisation==


<div class="mw-translate-fuzzy">
# Sélectionnez un objet que vous souhaitez distribuer.
# Sélectionnez un objet que vous souhaitez distribuer.
# Sélectionnez un point composé.
# Sélectionnez un point composé.
# Appuyez sur le bouton {{Button|[[Image:Draft_PointArray.svg|16px]] [[Draft PointArray/fr|Matrice des points]]}}.
# Appuyez sur le bouton {{Button|[[Image:Draft_PointArray.svg|16px]] [[Draft PointArray/fr|Matrice des points]]}}.
</div>


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.

=== Point compound ===

<div class="mw-translate-fuzzy">
Pour créer un point composé, sélectionnez divers [[Draft Point/fr|Point Draft]] puis appuyez sur le bouton {{Button|[[Image:Draft Upgrade.svg|16px]] [[Draft Upgrade/fr|Mettre à niveau Draft]]}}.
Pour créer un point composé, sélectionnez divers [[Draft Point/fr|Point Draft]] puis appuyez sur le bouton {{Button|[[Image:Draft Upgrade.svg|16px]] [[Draft Upgrade/fr|Mettre à niveau Draft]]}}.
</div>


In essence, the object to be used as the compound must have one of three properties, {{PropertyData|Components}}, {{PropertyData|Links}}, or {{PropertyData|Geometry}}, and inside that compound, there must be at least one point with {{PropertyData|X}}, {{PropertyData|Y}}, and {{PropertyData|Z}} properties.
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.

{{Emphasis|Note:}} in the case of {{Button|[[File:Draft_Point.svg|16px]] [[Draft_Point|Draft Point]]}} and {{Button|[[File:Part_Point.svg|16px]] [[Part_Point|Part Point]]}} the array will try to position the copies using the {{PropertyData|Placement}} of the point. In the case of a sketcher {{Button|[[File:Sketcher_CreatePoint.svg|16px]] [[Sketcher_CreatePoint|Point]]}}, the position will be taken from its internal {{incode|X}}, {{incode|Y}}, and {{incode|Z}} attributes.

{{Emphasis|Note 2:}} for {{Button|[[File:Draft_Point.svg|16px]] [[Draft_Point|Draft Point]]}} its {{PropertyData|Placement}} always follows the values of {{PropertyData|X}}, {{PropertyData|Y}}, {{PropertyData|Z}}, so modifying these values is enough to produce the desired displacement. However, for {{Button|[[File:Part_Point.svg|16px]] [[Part_Point|Part Point]]}}, the net displacement is given by the sum of {{PropertyData|Placement}} with the vector with components {{PropertyData|X}}, {{PropertyData|Y}}, and {{PropertyData|Z}}.


==Options==
==Options==
Line 46: Line 62:
==Propriétés==
==Propriétés==


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

<div class="mw-translate-fuzzy">
* {{PropertyData/fr|Base}}: spécifie l'objet à dupliquer.
* {{PropertyData/fr|Base}}: spécifie l'objet à dupliquer.
* {{PropertyData/fr|Count}}: (en lecture seule) spécifie le nombre de copies de l'objet de base. Ce nombre dépendra du nombre de [[Draft Point/fr|Point Draft]] dans le composé.
* {{PropertyData/fr|Count}}: (en lecture seule) spécifie le nombre de copies de l'objet de base. Ce nombre dépendra du nombre de [[Draft Point/fr|Point Draft]] dans le composé.
Line 52: Line 71:
L'objet composé doit avoir un attribut {{PropertyData/fr|Links}}, {{PropertyData/fr|Componets}}, ou {{PropertyData/fr|Geometry}}. Chacun des objets à l'intérieur du composé devrait être un [[Draft Point/fr|Draft Points]] qui a des attributs {{PropertyData/fr|X}}, {{PropertyData/fr|Y}}, et {{PropertyData/fr|Z}} .
L'objet composé doit avoir un attribut {{PropertyData/fr|Links}}, {{PropertyData/fr|Componets}}, ou {{PropertyData/fr|Geometry}}. Chacun des objets à l'intérieur du composé devrait être un [[Draft Point/fr|Draft Points]] qui a des attributs {{PropertyData/fr|X}}, {{PropertyData/fr|Y}}, et {{PropertyData/fr|Z}} .
Les composés pourraient être créés avec les attributs [[Part Compound/fr|Part Créer un composé]] ({{PropertyData/fr|Links}}) ou avec les attributs [[Draft Upgrade/fr|Draft Upgrade]] ({{PropertyData/fr|Componets}}).
Les composés pourraient être créés avec les attributs [[Part Compound/fr|Part Créer un composé]] ({{PropertyData/fr|Links}}) ou avec les attributs [[Draft Upgrade/fr|Draft Upgrade]] ({{PropertyData/fr|Componets}}).
</div>


==Script==
==Script==
Line 57: Line 77:


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

Older call
{{Code|code=
point_array = makePointArray(base_object, point_object)
}}

New call
{{Code|code=
{{Code|code=
point_array = make_point_array(base_object, point_object, extra=None):
PointArray = makePointArray(base, ptlst)
}}
}}


<div class="mw-translate-fuzzy">
* Crée un objet {{incode|PointArray}} à partir de l'objet {{incode|base}} en plaçant les copies le long de {{incode|ptlst}}.
* Crée un objet {{incode|PointArray}} à partir de l'objet {{incode|base}} en plaçant les copies le long de {{incode|ptlst}}.
* {{incode|ptlst}} est un objet avec les attributs {{incode|Geometry}}, {{incode|Links}} ou {{incode|Components}} qui définissent la position des copies.
* {{incode|ptlst}} est un objet avec les attributs {{incode|Geometry}}, {{incode|Links}} ou {{incode|Components}} qui définissent la position des copies.
</div>


Exemple:
Exemple:
{{Code|code=
{{Code|code=
import FreeCAD, Draft
import FreeCAD as App
import Draft


doc = App.newDocument()
Polygon = Draft.makePolygon(3, radius=500.0)


p1 = Draft.makePoint(FreeCAD.Vector(1500, 0, 0))
polygon = Draft.make_polygon(3, radius=500.0)
p2 = Draft.makePoint(FreeCAD.Vector(2500, 0, 0))
p3 = Draft.makePoint(FreeCAD.Vector(2000, 1000, 0))


p1 = Draft.make_point(App.Vector(1500, 0, 0))
# Create a compound of points
addList, deleteList = Draft.upgrade([p1, p2, p3])
p2 = Draft.make_point(App.Vector(2500, 0, 0))
p3 = Draft.make_point(App.Vector(2000, 1000, 0))


compound = doc.addObject("Part::Compound", "Compound")
# Extract the compound from the list
compound = addList[0]
compound.Links = [p1, p2, p3]


PointArray = Draft.makePointArray(Polygon, compound)
point_array = Draft.make_point_array(polygon, compound)
doc.recompute()
}}
}}



Revision as of 21:41, 5 June 2020

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 Matrice de points peut être utilisé sur des formes 2D créées avec Atelier Draft, mais également sur de nombreux types d'objets 3D, tels que ceux créés avec Atelier Part, Atelier PartDesign ou Atelier Arch.

Pour positionner les copies dans un tableau orthogonal, utilisez Matrice Draft. Pour positionner les copies le long d’un chemin, utilisez Série de copies Draft. Pour créer des copies ou des clones et les placer manuellement, utilisez Déplacer Draft, Rotation Draft et Clone Draft.

Objet disposé à des points spécifiques

Utilisation

  1. Sélectionnez un objet que vous souhaitez distribuer.
  2. Sélectionnez un point composé.
  3. Appuyez sur le bouton Matrice des 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.

Point compound

Pour créer un point composé, sélectionnez divers Point Draft puis appuyez sur le bouton Mettre à niveau Draft.

In essence, the object to be used as the compound must have one of three properties, DonnéesComponents, DonnéesLinks, or DonnéesGeometry, and inside that compound, there must be at least one point with DonnéesX, DonnéesY, and DonnéesZ properties.

Note: in the case of Draft Point and Part Point the array will try to position the copies using the DonnéesPlacement of the point. In the case of a sketcher Point, the position will be taken from its internal X, Y, and Z attributes.

Note 2: for Draft Point its DonnéesPlacement always follows the values of DonnéesX, DonnéesY, DonnéesZ, so modifying these values is enough to produce the desired displacement. However, for Part Point, the net displacement is given by the sum of DonnéesPlacement with the vector with components DonnéesX, DonnéesY, and 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()