Macro Extract Wires from Mesh/fr: Difference between revisions
(Updating to match new version of source page) |
(Updating to match new version of source page) |
||
(6 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
<languages/> |
<languages/> |
||
<div class="mw-translate-fuzzy"> |
|||
{{Macro/fr |
{{Macro/fr |
||
|Name=Macro Extract Wires from Mesh |
|Name=Macro Extract Wires from Mesh |
||
|Icon=Macro_Extract_Wires_from_Mesh.png |
|||
|Description=Extrait les fils constituants les bords des mailles sélectionnées |
|Description=Extrait les fils constituants les bords des mailles sélectionnées |
||
|Author=Yorik |
|Author=Yorik |
||
|Version=1 |
|Version=1 |
||
|Date=2016-12-17 |
|Date=2016-12-17 |
||
|FCVersion=All |
|||
|Download=[https://www.freecadweb.org/wiki/images/2/28/Macro_Extract_Wires_from_Mesh.png ToolBar Icon] |
|||
}} |
}} |
||
</div> |
|||
==Description== |
==Description== |
||
Line 15: | Line 17: | ||
==Script== |
==Script== |
||
Icône de la barre d'outils |
|||
[[Image:Macro_Extract_Wires_from_Mesh.png]] |
|||
'''Macro_Extract_Wires_from_Mesh.FCMacro''' |
'''Macro_Extract_Wires_from_Mesh.FCMacro''' |
||
{{ |
{{MacroCode|code= |
||
#!/usr/bin/python |
#!/usr/bin/python |
||
Latest revision as of 10:17, 21 December 2021
Description |
---|
Extrait les fils constituants les bords des mailles sélectionnées Version macro : 1 Date dernière modification : 2016-12-17 Version FreeCAD : All Téléchargement : ToolBar Icon Auteur: Yorik |
Auteur |
Yorik |
Téléchargement |
ToolBar Icon |
Liens |
Page des macros Comment installer une macro Comment créer une barre d'outils |
Version Macro |
1 |
Dernière modification |
2016-12-17 |
Version(s) FreeCAD |
All |
Raccourci clavier |
None |
Voir aussi |
None |
Description
Cherche les bords dans les objets de maillage sélectionnés. Les bords recherchés sont les bords formés à partir de tous les bords trouvés et partagés par une seule face, c'est-à-dire, les bords "frontière". Les fils trouvés sont ajoutés au document (un composant par objet maillé), tandis que le maillage est masqué.
Script
Macro_Extract_Wires_from_Mesh.FCMacro
#!/usr/bin/python # This macro will extract wires from selected meshes # The result is a new Part Compound containing wires, one per original mesh object # The selected meshes will be hidden but still selected after the operation. # Warning, it takes a bit of time... import FreeCAD,FreeCADGui,Part,Draft,DraftGeomUtils,Mesh for obj in FreeCADGui.Selection.getSelection(): if obj.isDerivedFrom("Mesh::Feature"): shape = Part.Shape() shape.makeShapeFromMesh(obj.Mesh.Topology,0.1) edges = [] lut = {} for f in shape.Faces: for e in f.Edges: lut.setdefault(e.hashCode(),[]).append(e) for k,v in lut.items(): if len(v) == 1: edges.extend(v) if edges: wires = DraftGeomUtils.findWires(edges) if wires: Part.show(Part.makeCompound(wires)) obj.ViewObject.hide()