Arch SplitMesh/de: Difference between revisions

From FreeCAD Documentation
(Created page with "==Scripting== {{Emphasis|Siehe auch:}} Arch API und FreeCAD Scripting Basics.")
(Created page with "Das Netz-zerlegen-Werkzeug kann in Makros ebenso wie aus der Python-Konsole heraus über folgende Funktion angesprochen werden:")
Line 21: Line 21:
{{Emphasis|Siehe auch:}} [[Arch API/de|Arch API]] und [[FreeCAD Scripting Basics/de|FreeCAD Scripting Basics]].
{{Emphasis|Siehe auch:}} [[Arch API/de|Arch API]] und [[FreeCAD Scripting Basics/de|FreeCAD Scripting Basics]].


The SplitMesh tool can be used in [[macros]] and from the [[Python]] console by using the following function:
Das Netz-zerlegen-Werkzeug kann in [[macros/de|Makros]] ebenso wie aus der [[Python/de|Python]]-Konsole heraus über folgende Funktion angesprochen werden:
{{Code|code=
{{Code|code=
new_list = splitMesh(obj, mark=True)
new_list = splitMesh(obj, mark=True)

Revision as of 14:42, 9 February 2019

Arch SplitMesh

Menüeintrag
Arch → Dienstprogramme → Netz zerlegen
Arbeitsbereich
Arch-Arbeitsbereich
Standardtastenkürzel
Keiner
Eingeführt in Version
-
Siehe auch
Arch SelectNonSolidMeshes, Wandelt Netz in Form um

Beschreibung

Diese Werkzeug teilt ein ausgewähltes Mesh-Objekt in die separaten Komponenten.

Anwendung

  1. Wähle ein ein Netz-Objekt
  2. Drücke den Netz zerlegen-Eintrag in Arch → Dienstprogramme → Netz zerlegen.

Scripting

Siehe auch: Arch API und FreeCAD Scripting Basics.

Das Netz-zerlegen-Werkzeug kann in Makros ebenso wie aus der Python-Konsole heraus über folgende Funktion angesprochen werden:

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)