Arch SplitMesh/sv: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Updating to match new version of source page)
(One intermediate revision by the same user not shown)
Line 4: Line 4:
|[[Arch_MeshToShape|Mesh To Shape]]
|[[Arch_MeshToShape|Mesh To Shape]]
|[[Arch_Module|Arch]]
|[[Arch_Module|Arch]]
|IconL=Arch_Component_Clone.svg
|IconL=Arch_CloneComponent.svg
|IconC=Workbench_Arch.svg
|IconR=Arch_MeshToShape.svg
|IconR=Arch_MeshToShape.svg
|IconC=Workbench_Arch.svg
}}
}}


Line 58: Line 58:
|[[Arch_MeshToShape|Mesh To Shape]]
|[[Arch_MeshToShape|Mesh To Shape]]
|[[Arch_Module|Arch]]
|[[Arch_Module|Arch]]
|IconL=Arch_Component_Clone.svg
|IconL=Arch_CloneComponent.svg
|IconC=Workbench_Arch.svg
|IconR=Arch_MeshToShape.svg
|IconR=Arch_MeshToShape.svg
|IconC=Workbench_Arch.svg
}}
}}



Revision as of 15:30, 12 December 2020

Arch SplitMesh

Menyplacering
Arch → Utilities → Split Mesh
Arbetsbänkar
Arch
Standard genväg
Ingen
Introducerad i version
-
Se även
Arch SelectNonSolidMeshes

Beskrivning

This tool splits a selected Mesh object into its separate components

Usage

  1. Select a mesh object.
  2. Press the Split Mesh entry in Arch → Utilities → Split Mesh.

Scripting

See also: Arch API and FreeCAD Scripting Basics.

The SplitMesh tool can be used in macros and from the Python console by using the following function:

new_list = splitMesh(obj, mark=True)
  • Splits the given mesh object (obj) into separated components.
  • If mark is True non-manifold components will be painted red.
  • new_list is a list of all the individual components that make the mesh.

Example:

import FreeCAD, Draft, Arch, Mesh, MeshPart

Line = Draft.makeWire([FreeCAD.Vector(0, 0, 0),FreeCAD.Vector(2000, 2000, 0)])
Wall = Arch.makeWall(Line, width=150, height=3000)
FreeCAD.ActiveDocument.recompute()

Shape = Wall.Shape.copy(False)
Shape.Placement = Wall.getGlobalPlacement()

mesh_obj = FreeCAD.ActiveDocument.addObject("Mesh::Feature", "Mesh")
mesh_obj.Mesh = MeshPart.meshFromShape(Shape=Shape, MaxLength=520)
mesh_obj.ViewObject.DisplayMode = "Flat Lines"

new_list = Arch.splitMesh(mesh_obj)