Part Создать фигуру из полигональной сетки

From FreeCAD Documentation
Revision as of 07:24, 19 October 2020 by Baritone (talk | contribs)

Part ShapeFromMesh‏‎

Системное название
Part ShapeFromMesh‏‎
Расположение в меню
Деталь → Создание формы из сетки...
Верстаки
Part
Быстрые клавиши
Нет
Представлено в версии
-
См. также
Part ConvertToSolid, Уточнить форму, Part PointsFromMesh

Introduction

Введение

Эта команда создаёт форму из сетки. Возможности объектов типа сетка внутри FreeCAD ограничены, преобразование их в формы позволяет использовать с ними гораздо больше инструментов (см. так же примечания).

The inverse operation is Mesh FromPartShape from the Mesh Workbench.

Usage

Использование

  1. Выберите полигонально-сеточный объект.
  2. Выберите в верхнем меню Деталь Создание формы из сетки....
  3. Всплывающее меню запросит допуск сшивания формы (значение по умолчанию: 0,1)
  4. Инструмент создаёт из сетки отдельный новый объект - форму.

Ограничения

Анализ или проверка сетки проводиться не будет.
Анализ и исправление сетки (при необходимости) должен проводиться вручную перед преобразованием.
Подходящие инструменты доступны в верстаке Mesh.

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()