Arch 3Ansichten

From FreeCAD Documentation
Revision as of 13:54, 7 July 2020 by Maker (talk | contribs) (Created page with "Dieses Werkzeug kann in Makros und von der Python Konsole aus mit der folgenden Funktion verwendet werden:")

Arch 3Ansichten

Menüeintrag
Arch → Dienstprogramme → 3 Ansichten aus Netz
Arbeitsbereich
Arch
Standardtastenkürzel
Keiner
Eingeführt in Version
-
Siehe auch
Arch Netz zerlegen, Arch NetzZuForm

Beschreibung

Dieser Befehl wird zur Zeit nicht verwendet. Er dient dazu, flache, formbasierte Ansichten aus einem Mesh basierten Objekt zu erzeugen, die von der Arch Ausrüstung Werkzeug.

Anwendung

  1. Wähle ein Netzobjekt aus.
  2. Wähle die Schaltfläche oder ArchUtilities 3Ansichten aus dem oberen Menü.

Skripten

Siehe auch: Arch API und FreeCAD Grundlagen Skripten.

Dieses Werkzeug kann in Makros und von der Python Konsole aus mit der folgenden Funktion verwendet werden:

shape = createMeshView(obj, direction=FreeCAD.Vector(0, 0, -1), outeronly=False, largestonly=False)
  • Creates a flat shape that is the projection of the given mesh object (obj) in the given direction.
  • If outeronly is True only the outer contour is taken into consideration, discarding the inner holes.
  • If largestonly is True only the largest segment of the given mesh will be used.

Use Part.show() to display the resulting flat shape.

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"
FreeCAD.ActiveDocument.recompute()

XAxis = FreeCAD.Vector(1, 0, 0)
YAxis = FreeCAD.Vector(0, 1, 0)
ZAxis = FreeCAD.Vector(0, 0, -1)

s1 = Arch.createMeshView(mesh_obj, ZAxis)
s2 = Arch.createMeshView(mesh_obj, XAxis)
s3 = Arch.createMeshView(mesh_obj, YAxis)

Part.show(s1)
Part.show(s2)
Part.show(s3)

Wall.ViewObject.Visibility = False
mesh_obj.ViewObject.Visibility = False