add tessellation intro
This commit is contained in:
parent
1a8d4b44c0
commit
1e3b2fb7ce
2 changed files with 59 additions and 1 deletions
51
docs/3d/tessellation_intro.md
Normal file
51
docs/3d/tessellation_intro.md
Normal file
|
@ -0,0 +1,51 @@
|
|||
---
|
||||
id: algoritm_eksporta
|
||||
title: Алгоритмы тесселяции САПР моделей.
|
||||
---
|
||||
|
||||
<h1 align="center">Алгоритмы тесселяции САПР моделей.</h1>
|
||||
|
||||
- [Предисловие](#предисловие)
|
||||
- [Примеры популярных алгоритмов тесселяции:](#примеры)
|
||||
- [IncrementalMesh](#IncrementalMesh)
|
||||
- [Netgen](#netgen)
|
||||
- [Gmsh](#gmsh)
|
||||
|
||||
## Предисловие.
|
||||
Основными разновидностями моделирования в 3д графике являются:
|
||||
|
||||
- полигональное моделирование, описывает поверхность массивом точек (Mesh);
|
||||
- САПР моделирование, описывает поверхность математической функцией (CAD).
|
||||
|
||||
При **полигональном** моделировании выбирается некий **предел** точек, поэтому не возможно избежать **изломов** криволинейной поверхности, создать **идеальную** ее плавность. В данном случае САПР имеет преимущество.
|
||||
|
||||
В то же время, для визуализации 3д графики на мониторе компьютера, все 3д модели, в том числе и САПР, автоматически переводятся в полигональную сетку. В данном случае полигональное моделирование имеет преимущество.
|
||||
|
||||
- При визуализации полигональных моделей, их поверхность практически не изменяется (некоторое изменение будет в любом случае).
|
||||
|
||||
- При визуализация САПР моделей происходит автоматическая **тесселяция**, которая дискретизирует поверхность в сетку из треугольников, при этом нужно выбирать баланс между избыточной **ресурсоемкостью** на визуализацию, либо **точностью** визуализации.
|
||||
|
||||
## Примеры популярных алгоритмов тесселяции (Meshing).
|
||||
Все алгоритмы тесселяции схожи в том что строят массив точек изходя из предела дискретизации.
|
||||
|
||||
### IncrementalMesh.
|
||||
IncrementalMesh алгоритм является частью Open CASCADE Technology (OCCT), САПР библиотеки.
|
||||
Это один из наиболее универсальных алгоритмов, особенно подходит для поделей визуализации, машинного обучения, симуляции машин и механизмов.
|
||||
Алгоритм реализует тесселяцию на основе **допуска** отклонения по расстоянию и углу, помещает тесселированную прокси фигуры объем самой САПР модели, и определяет массив точек исходя из заданного допуском отклонения от оригинала.
|
||||
|
||||
[подробнее](https://dev.opencascade.org/doc/overview/html/occt_user_guides__mesh.html "подробная статья по ссылке")
|
||||
|
||||
### *Алгоритмы тесселяции для Метода Конечных Элементов (FEM).*
|
||||
|
||||
*Следующие алгоритмы схожие по назначению, это, в основном, механика твёрдого деформируемого тела, и подобные исследования для материалов объемов тел, которые расчитываются FEM методами.*
|
||||
|
||||
#### Netgen.
|
||||
Netgen использует несколько параметров, включая максимальный и минимальный размеры элементов, степень детализации сетки, количество шагов оптимизации и т. д.
|
||||
Netgen в основном работает в 3д. В зависимости от заданных параметров он может изготавливать элементы с размерами, адаптированными к локальным кривизнам - большими на участках плоской поверхности и меньшими на гнутых участках. Как только сетка построена для ребер и граней, Netgen выполняет дополнительные итерации для упрощения сетки. Установка этого параметра в 0 отключает упрощение. Netgen в целом медленнее, чем Mefisto, и более чувствителен к качеству входных моделей.
|
||||
|
||||
[подробнее](https://ngsolve.org/ "подробная статья по ссылке")
|
||||
|
||||
#### Gmsh.
|
||||
Gmsh работает в 3д и делает 4 прохода: анализ геометрии, анализ сетки, тесселяция, постобработка. Gmsh использует упоминаемую выше OCCT для функций конструктивной геометрии и взаимодействует с дополнительной внешней сеткой и библиотеками адаптации сетки Netgen и Mmg3d, для упрощения, на этапе постобработки
|
||||
|
||||
[подробнее](https://gmsh.info/ "подробная статья по ссылке")
|
|
@ -74,5 +74,12 @@ module.exports = {
|
|||
'workflow-rules'
|
||||
],
|
||||
},
|
||||
{
|
||||
type: 'category',
|
||||
label: '3д графика',
|
||||
items: [
|
||||
'3d/tessellation_intro'
|
||||
],
|
||||
},
|
||||
],
|
||||
};
|
||||
};
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue