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

From FreeCAD Documentation
Jump to navigation Jump to search
This page is a translated version of the page Part ShapeFromMesh and the translation is 31% complete.
Outdated translations are marked like this.
Other languages:
Deutsch • ‎English • ‎français • ‎italiano • ‎polski • ‎português do Brasil • ‎română • ‎русский

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

Системное название
Part_ShapeFromMesh‏‎
Расположение в меню
Part → Создание фигуры из полигональной сетки...
Верстаки
Part
Быстрые клавиши
Нет
Представлено в версии
-
См. также
Преобразовать в твердые, Закрепить фигуру, Part PointsFromMesh

Введение

Введение

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

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

Применение

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

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

Ограничения

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

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

Ссылки

Программирование

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