Skip to content

Latest commit

 

History

History
60 lines (39 loc) · 2.86 KB

Part_ShapeFromMesh.md

File metadata and controls

60 lines (39 loc) · 2.86 KB


Part ShapeFromMesh

Introduction

The Part ShapeFromMesh command creates a shape from a mesh object. Mesh objects have limited editing capabilities in FreeCAD, converting them to shapes will allow their use with many more boolean and modification tools.

The inverse operation is [ Mesh FromPartShape from the Mesh Workbench.

Usage

  1. Select the mesh object in the tree view.
  2. Go to the menu, Part → [ Create shape from mesh.
  3. A popup-menu will ask for the tolerance for sewing shape; the default value is {{Value|0.1}}.
  4. A shape from the mesh object is created as a separate new object.

Analyzing and repairing of the mesh, if needed, should be done manually before launching [ ShapeFromMesh. Appropriate tools for this task are available in the Mesh Workbench.

After creation of a Shape, it may be useful to use Convert to solid (necessary for boolean operations) and [ Refine shape.

Links

Scripting

Creating a Shape from a Mesh can be done by using the makeShapeFromMesh method from a Part TopoShape; you need to specify the source mesh and tolerance, and assign the result to a new Part Feature object.

Notice that the mesh must be recalculated before it is converted to a Shape, otherwise there won't be topology information, and the conversion won't be successful.

import FreeCAD as App
import Part

doc = App.newDocument()
mesh = doc.addObject("Mesh::Cube", "Mesh")
mesh.recompute()

solid = doc.addObject("Part::Feature", "Shape")
shape = Part.Shape()
shape.makeShapeFromMesh(mesh.Mesh.Topology, 0.1)

solid.Shape = shape
solid.Placement.Base = App.Vector(15, 0, 0)
solid.purgeTouched()
doc.recompute()

documentation index > Part > Part ShapeFromMesh