Part JoinConnect/fr: Difference between revisions

From FreeCAD Documentation
(Created page with "L'outil lui-même est implémenté en Python, voir /Mod/Part/BOPTools/SplitFeatures.py la où FreeCAD est installé.")
(Updating to match new version of source page)
(48 intermediate revisions by 5 users not shown)
Line 1: Line 1:
<languages/>
{{GuiCommand/fr|Name=Connection|Name/fr=Part JoinConnect|MenuLocation=Part → Join → Connect objects|Workbenches=[[Part Module/fr|Part]]|SeeAlso=[[Part_JoinConnect/fr|Connect]], [[Part_JoinEmbed/fr|Embed]], [[Part_JoinCutout/fr|Cutout]], [[Part Booleans/fr|Part Booleans]], [[Part Thickness/fr|Part Thickness]]}}
{{Docnav/fr
|[[Part CompJoinFeatures/fr|Joindre des objets à paroi]]
|[[Part_JoinEmbed/fr|Intégrer un objet]]
|[[Part_Module/fr|Part]]
|IconL=Part JoinConnect.svg
|IconC=Workbench_Part.svg
|IconR=Part JoinEmbed.svg
}}

{{GuiCommand/fr
|Name=Part JoinConnect
|Name/fr=Connecter des objets
|MenuLocation=Pièce → Joindre → Connecter des objets
|Workbenches=[[Part Module/fr|Part]]
|SeeAlso=[[Part_JoinConnect/fr|Connecter des objets]], [[Part_JoinEmbed/fr|Intégrer des objets]], [[Part_JoinCutout/fr|Découpe]], [[Part Booleans/fr|Opérations Booléennes]], [[Part Thickness/fr|Évidement ou coque]]}}


==Description==
Outil de connexion pour joindre deux objets creux par exemple deux tuyaux
Peut aussi joindre des objets en forme de gouttière
Outil de connexion pour joindre deux objets creux (par exemple deux tuyaux). Peut aussi joindre des coques et des fils.


[[image:JoinFeatures_Connect.png|600px]]
[[image:JoinFeatures_Connect.png|600px]]


<div class="mw-translate-fuzzy">
==Comment l'utiliser==
==Comment l'utiliser==
# Sélectionnez les objets à connecter. <br /> L'ordre de sélection n'a pas d'importance, l'action est symétrique. Il suffit de sélectionner un élément de chaque objet (par ex. leurs faces). Il est aussi possible de sélectionner un composé contenant toutes les formes à connecter, par ex. un [[Draft Array/fr|Réseau Draft]].
Sélectionner les objets à connecter.
# Invoquez la commande Connecter des objets.
L'ordre de sélection n'a pas d'importance, l'action est symétrique, et tous les objets peuvent être sélectionnés par exemple après une opération de copie polaire
</div>


Un objet paramétrique Slice est créé. Les objets d'origine sont cachés et le résultat de l'intersection est affiché en 3D.
Un objet paramétrique Connect est créé. Les objets d'origine sont cachés et le résultat de l'intersection est affiché en 3D.


==Propriétés==
==Propriétés==
{{TitleProperty|Connect}}
* {{ProprieteDonnees|Objets}}: Liste les objets a connecter. En général deux objets suffisent, un compound d'objets fonctionne (Depuis V0.17, cette propriété n'est pas disponible mais seulement en Python)
* {{PropertyData/fr|Objects}}: Liste les objets a connecter. En général deux objets suffisent, un compound d'objets fonctionne (Depuis V0.17, cette propriété n'est pas affichée dans l'éditeur de propriétés, mais seulement disponible en Python).
* {{ProprieteDonnées|Définir}}: choisir comment appliquer. Par défaut cette opération est automatique après l'opération Booléenne
* {{PropertyData/fr|Refine}}: choisir d'appliquer ou non un [[Part RefineShape/fr|Affinage de forme]] sur la forme finale. Par défaut cette valeur est déterminée par la case ''Affiner les modèles automatiquement après une opération booléenne'' dans les préférences Conception de pièce.
* {{ProptieteDonnees|Tolérance}}:
* {{PropertyData/fr|Tolerance}}: Valeur de "flou". Il s'agit d'une tolérance supplémentaire à appliquer lors de la recherche d'intersections, en plus des tolérances stockées dans les formes d'entrée.
Valeurs affinées


==Exemple==
==Exemple==
# Créer un tuyau avec [[Part_Cylinder|cylinder]]: <br />[[image:JoinFeatures_Example_step1.png|320px]]
# Créer un tuyau en appliquant un [[Part_Thickness/fr|évidement]] sur un [[Part_Cylinder/fr|cylindre]]: <br />[[image:JoinFeatures_Example_step1.png|320px]]
# Créer un autre plus petit, et le placer pour qu'il perce le premier tuyau: <br />[[image:JoinFeatures_Example_step2.png|320px]]
# Créer un autre tuyau plus petit, et le [[Placement/fr|placer]] pour qu'il perce le premier tuyau: <br />[[image:JoinFeatures_Example_step2.png|320px]]
# Sélectionner les deux tuyaux , et clic l'option 'Connection d'objets' du menu déroulant Joindre Objets. <br />[[image:JoinFeatures_Example_step3_Connect.png|320px]]
# Sélectionner le premier tuyau puis le second, et cliquer sur l'option 'Connecter des objets' du menu déroulant Joindre des objets à paroi.<br/>[[image:JoinFeatures_Example_step3_Connect.png|320px]]
Utiliser divers outil de plan de coupe ([[Std_ClippingPlane|Clipping plane]], [[Arch_SectionPlane|Arch Section Plane]], [[Arch_CutPlane|Arch Cut Plane]]) pour voir l'intérieur. Dans l'image ci-dessous, Arch Section Plane est utilisé .<br />[[image:JoinFeatures_Example_step4_Connect.png|320px]]
# Utiliser divers outils de plan de coupe ([[Std_ToggleClipPlane/fr|Std Créer une section ...]], [[Arch_SectionPlane/fr|Arch Section Plane]], [[Arch_CutPlane/fr|Arch Couper selon un plan]]) pour voir l'intérieur. Dans l'image ci-dessous, Arch Section Plane est utilisé.<br />[[image:JoinFeatures_Example_step4_Connect.png|320px]]


==Algorithm==
==Algorithme==
Les algorithmes derrière les outils Joindre sont très simples, et les comprendre est important pour utiliser les outils correctement. L'algorithme de Connecter, en particulier, est plus complexe que les autres, mais il suffit généralement d'y penser comme d'une variante symétrique de l'[[Part_JoinEmbed/fr#Algorithme|algorithme Intégrer (Embed)]].


Chaque objet est coupé à l'intersection avec l'autre
1. Chaque objet est coupé à l'intersection avec l'autre
(voir [[Part BooleanFragments]])
(voir [[Part BooleanFragments/fr|Fragmentation booléenne]])


De l'objet seulement l'épaisseur est conserver, le reste est enlevé
2. Parmi les morceaux d'un objet, seul le plus grand est conservé; tout le reste est jeté.


Les pièces qui se touchent sont ajoutées au résultat et sont jointe ensemble
3. Les pièces d'intersection qui touchent au moins deux objets sont ajoutées au résultat. Ensuite, les pièces sont jointes pour former le résultat de Connecter.


===Notes===
===Notes===
* Si, à l'étape 1, chaque objet reste en un seul morceau, le résultat de Connecter sera équivalent à l'[[Part Union/fr|union (booléenne)]] des objets.
* Actuellement, tous les composés fournis sont explosés avant la connexion. Cela signifie que les composés à intersection automatique, qui ne sont pas valides pour toutes les autres opérations booléennes, sont valables pour Connecter. (Cela pourra être changé à l'avenir.)
* La "plus grande" pièce est celle qui a la plus grande masse. C'est-à-dire que pour les solides, les volumes sont comparés; pour les coques et les faces, les zones sont comparées, etc.
* Depuis FreeCAD v0.17.8053, et si la version OCC est la version 6.9.0 et ultérieure, Connecter est presque aussi rapide que toutes les autres opérations booléennes. Pour les versions plus anciennes, Connecter est environ 5 fois plus lent qu'une opération booléenne normale et ne fonctionne que sur les solides.


==Programmation==
==Script==


L'outil Joindre peu être utiliser en [[macros]] et depuis la console Python
L'outil Joindre peut être utilisé dans des [[macros/fr|macros]] à partir de la console Python en utilisant la fonction suivante:
'''BOPTools.JoinFeatures.makeConnect(name)'''
'''BOPTools.JoinFeatures.makeConnect(name)'''
* Crée une fonction Slice vide. Les propriétés «Base» et «Outils» doivent être attribuées explicitement, par la suite.
* Crée une fonction Connect vide. La propriété 'Objets' doit être attribuée explicitement par la suite.
* Renvoi l'objet nouvellement créé.
* Renvoie l'objet nouvellement créé.


Slice peut également être appliqué à des formes simples, sans avoir besoin d'un objet de document via :
Connecter peut également être appliqué à des formes simples, sans avoir besoin d'un objet document, via :
'''Part.BOPTools.JoinAPI.connect(list_of_shapes, tolerance = 0.0)'''
'''Part.BOPTools.JoinAPI.connect(list_of_shapes, tolerance = 0.0)'''
Cela peut être utile pour créer des fonctionnalités de script personnalisées Python.
Cela peut être utile pour créer des fonctionnalités de script personnalisées Python.
Line 52: Line 74:
j.Objects = FreeCADGui.Selection.getSelection()
j.Objects = FreeCADGui.Selection.getSelection()
}}
}}
L'outil lui-même est implémenté en Python, voir /Mod/Part/BOPTools/SplitFeatures.py la où FreeCAD est installé.
L'outil lui-même est implémenté en Python, voir /Mod/Part/BOPTools/JoinFeatures.py la où FreeCAD est installé.


==Version==
==Version==
Cet outil est inclus à FreeCAD depuis V0.16.5069
Cet outil est inclus à FreeCAD depuis V0.16.5069


The tool was re-implemented to work via generalFuse in FreeCAD v0.17.8053
L'outil a été -implémenté pour fonctionner via generalFuse dans FreeCAD V0.17.8053

{{Docnav/fr
|[[Part CompJoinFeatures/fr|Joindre des objets à paroi]]
|[[Part_JoinEmbed/fr|Intégrer un objet]]
|[[Part_Module/fr|Part]]
|IconL=Part JoinConnect.svg
|IconC=Workbench_Part.svg
|IconR=Part JoinEmbed.svg
}}

{{Part Tools navi/fr}}

{{Userdocnavi/fr}}


{{clear}}
{{clear}}
<languages/>

Revision as of 21:52, 13 February 2020

Connecter des objets

Emplacement du menu
Pièce → Joindre → Connecter des objets
Ateliers
Part
Raccourci par défaut
Aucun
Introduit dans la version
-
Voir aussi
Connecter des objets, Intégrer des objets, Découpe, Opérations Booléennes, Évidement ou coque

Description

Outil de connexion pour joindre deux objets creux (par exemple deux tuyaux). Peut aussi joindre des coques et des fils.

Comment l'utiliser

  1. Sélectionnez les objets à connecter.
    L'ordre de sélection n'a pas d'importance, l'action est symétrique. Il suffit de sélectionner un élément de chaque objet (par ex. leurs faces). Il est aussi possible de sélectionner un composé contenant toutes les formes à connecter, par ex. un Réseau Draft.
  2. Invoquez la commande Connecter des objets.

Un objet paramétrique Connect est créé. Les objets d'origine sont cachés et le résultat de l'intersection est affiché en 3D.

Propriétés

Connect

  • DonnéesObjects: Liste les objets a connecter. En général deux objets suffisent, un compound d'objets fonctionne (Depuis V0.17, cette propriété n'est pas affichée dans l'éditeur de propriétés, mais seulement disponible en Python).
  • DonnéesRefine: choisir d'appliquer ou non un Affinage de forme sur la forme finale. Par défaut cette valeur est déterminée par la case Affiner les modèles automatiquement après une opération booléenne dans les préférences Conception de pièce.
  • DonnéesTolerance: Valeur de "flou". Il s'agit d'une tolérance supplémentaire à appliquer lors de la recherche d'intersections, en plus des tolérances stockées dans les formes d'entrée.

Exemple

  1. Créer un tuyau en appliquant un évidement sur un cylindre:
  2. Créer un autre tuyau plus petit, et le placer pour qu'il perce le premier tuyau:
  3. Sélectionner le premier tuyau puis le second, et cliquer sur l'option 'Connecter des objets' du menu déroulant Joindre des objets à paroi.
  4. Utiliser divers outils de plan de coupe (Std Créer une section ..., Arch Section Plane, Arch Couper selon un plan) pour voir l'intérieur. Dans l'image ci-dessous, Arch Section Plane est utilisé.

Algorithme

Les algorithmes derrière les outils Joindre sont très simples, et les comprendre est important pour utiliser les outils correctement. L'algorithme de Connecter, en particulier, est plus complexe que les autres, mais il suffit généralement d'y penser comme d'une variante symétrique de l'algorithme Intégrer (Embed).

1. Chaque objet est coupé à l'intersection avec l'autre (voir Fragmentation booléenne)

2. Parmi les morceaux d'un objet, seul le plus grand est conservé; tout le reste est jeté.

3. Les pièces d'intersection qui touchent au moins deux objets sont ajoutées au résultat. Ensuite, les pièces sont jointes pour former le résultat de Connecter.

Notes

  • Si, à l'étape 1, chaque objet reste en un seul morceau, le résultat de Connecter sera équivalent à l'union (booléenne) des objets.
  • Actuellement, tous les composés fournis sont explosés avant la connexion. Cela signifie que les composés à intersection automatique, qui ne sont pas valides pour toutes les autres opérations booléennes, sont valables pour Connecter. (Cela pourra être changé à l'avenir.)
  • La "plus grande" pièce est celle qui a la plus grande masse. C'est-à-dire que pour les solides, les volumes sont comparés; pour les coques et les faces, les zones sont comparées, etc.
  • Depuis FreeCAD v0.17.8053, et si la version OCC est la version 6.9.0 et ultérieure, Connecter est presque aussi rapide que toutes les autres opérations booléennes. Pour les versions plus anciennes, Connecter est environ 5 fois plus lent qu'une opération booléenne normale et ne fonctionne que sur les solides.

Script

L'outil Joindre peut être utilisé dans des macros à partir de la console Python en utilisant la fonction suivante:

BOPTools.JoinFeatures.makeConnect(name)
  • Crée une fonction Connect vide. La propriété 'Objets' doit être attribuée explicitement par la suite.
  • Renvoie l'objet nouvellement créé.

Connecter peut également être appliqué à des formes simples, sans avoir besoin d'un objet document, via :

Part.BOPTools.JoinAPI.connect(list_of_shapes, tolerance = 0.0)

Cela peut être utile pour créer des fonctionnalités de script personnalisées Python.

Exemple:

import Part
j = Part.BOPTools.JoinFeatures.makeConnect(name= 'Connect')
j.Objects = FreeCADGui.Selection.getSelection()

L'outil lui-même est implémenté en Python, voir /Mod/Part/BOPTools/JoinFeatures.py la où FreeCAD est installé.

Version

Cet outil est inclus à FreeCAD depuis V0.16.5069

L'outil a été ré-implémenté pour fonctionner via generalFuse dans FreeCAD V0.17.8053