Научная статья на тему 'Алгоритм построения сети методом треугольных подразбиений'

Алгоритм построения сети методом треугольных подразбиений Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
82
23
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ / NURBS / ТРЕУГОЛЬНАЯ СЕТЬ / АЛГОРИТМ ПОДРАЗБИЕНИЯ / ГЕОМЕТРИЧЕСКОЕ МОДЕЛИРОВАНИЕ / ПРИКЛАДНАЯ ИНФОРМАТИКА / INFORMATION TECHNOLOGY / FINITE ELEMENT MESH / SUBDIVISION ALGORITHM / GEOMETRIC MODELING / APPLIED INFORMATICS

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Берзин Д.В.

В данной работе описан алгоритм построения треугольной сети для заданной посредством контрольных точек поверхности NURBS. Используются два метода подразбиений Loop и Modified Butterfly.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ALGORITHM FOR FINITE ELEMENT MESH GENERATION USING TRIANGULAR SUBDIVISION SCHEMES

We suggest here a new algorithm for triangular finite element mesh generation for NURBS surface represented as a set of control points. We use a modern approach subdivision techniques, which has many advantages. Two different subdivision schemes are presented here: Modified Butterfly and Loop ones.

Текст научной работы на тему «Алгоритм построения сети методом треугольных подразбиений»

Международный научно-исследовательский журнал ■ № 10 (41) ■ Часть 4 ■ Ноябрь

4. K. Ohmori, T.L.Kunii “Shape Modeling Using Homotopy” // IEEE 2001.

5. Masaki Hilaga, Yoshihisa Shinagawa, Taku Kohmura, Tosiyasu L. Kunii (2001). Topology Matching for Fully Automatic Similarity Estimation of 3D Shapes // SIGGRAPH’2001

6. Y. Shinagawa, T. L. Kunii, Y. L. Kergosien “Surface Coding Based on Morse Theory” // IEEE Computer Graphics & Applications, 1991.

7. Y. Shinagawa, T. L. Kunii “Constructing a Reeb Graph Automatically from Cross Sections” // IEEE Computer Graphics & Applications, 1991.

8. Dmitry Berzin "On homotopy and cellular approaches to shape modelling" // Международный научно исследовательский журнал = Research Journal of International Studies, №8 (27) 2014, p. 4

9. Dmitry Berzin "On topological methods in shape modelling" // Международный научно исследовательский журнал = Research Journal of International Studies, №9 (28) 2014, p. 7

References

1. A. T. Fomenko, T. L. Kunii “Topological Modeling for Visualization” // Springer, 1998

2. A. T. Fomenko, D. B. Fuchs “Course of Homotopic Topology.” // Kluwer Academic Publishers

3. T. L. Kunii “Valid Computational Shape Modeling: Design and Implementation” // World Scientific, December 1999

4. K. Ohmori, T.L.Kunii “Shape Modeling Using Homotopy” // IEEE 2001.

5. Masaki Hilaga, Yoshihisa Shinagawa, Taku Kohmura, Tosiyasu L. Kunii (2001). Topology Matching for Fully Automatic Similarity Estimation of 3D Shapes // SIGGRAPH’2001

6. Y. Shinagawa, T. L. Kunii, Y. L. Kergosien “Surface Coding Based on Morse Theory” // IEEE Computer Graphics & Applications, 1991.

7. Y. Shinagawa, T. L. Kunii “Constructing a Reeb Graph Automatically from Cross Sections” // IEEE Computer Graphics & Applications, 1991.

8. Dmitry Berzin "On homotopy and cellular approaches to shape modelling" // Research Journal of International Studies, №8 (27) 2014, p. 4

9. Dmitry Berzin "On topological methods in shape modelling" // Research Journal of International Studies, №9 (28) 2014, p. 7

DOI 10.18454/IRJ.2015.41.042 Берзин Д.В.

Кандидат физико-математических наук, доцент,

Финансовый университет при Правительстве Российской Федерации, Москва АЛГОРИТМ ПОСТРОЕНИЯ СЕТИ МЕТОДОМ ТРЕУГОЛЬНЫХ ПОДРАЗБИЕНИЙ

Аннотация

В данной работе описан алгоритм построения треугольной сети для заданной посредством контрольных точек поверхности NURBS. Используются два метода подразбиений - Loop и Modified Butterfly.

Ключевые слова: Информационные технологии, NURBS, треугольная сеть, алгоритм подразбиения,

геометрическое моделирование, прикладная информатика.

Berzin D.V.

PhD in Physics and Mathematics, Associate Professor,

Financial University under the Government of the Russian Federation, Moscow ALGORITHM FOR FINITE ELEMENT MESH GENERATION USING TRIANGULAR SUBDIVISION SCHEMES

Abstract

We suggest here a new algorithm for triangular finite element mesh generation for NURBS surface represented as a set of control points. We use a modern approach - subdivision techniques, which has many advantages. Two different subdivision schemes are presented here: Modified Butterfly and Loop ones.

Keywords: Information Technology, NURBS, Finite element mesh, subdivision algorithm, geometric modeling, applied informatics.

1. Формулировка проблемы

~^)ассмотрим двумерную поверхность S, заданную посредством контрольных точек, см. [1]. Таким образом, в

нашем распоряжении имеется множество контрольных точек, веса, последовательность узлов (un ,vk), i= -1, ... , L+1; j=-1, ... , M+1; n=0, ..., L; k=0, ... , M. И соответствующая поверхность NURBS представлена в следующей параметрической форме:

ZZ WvdvN(u)N3 (v)

> j_____________________

ZZ n; (v)

ij

В системах CAD, треугольные подразбиения имеют определенные преимущества перед прямоугольными [1]. К примеру, они не подвержены определенным видам вырожденности и лучше подходят для описания сложных геометрических объектов.

10

Международный научно-исследовательский журнал ■ № 10 (41) ■ Часть 4 ■ Ноябрь

Нашей целью является построение треугольной сети отвечающей следующим условиям [2,3]. Треугольники должны удовлетворять определенному соотношению сторон, проще говоря, они должны быть максимально близки к правильным треугольникам. Вершины треугольников должны принадлежать данной поверхности S. Расстояние d между треугольником и поверхностью должно быть меньше предписанного (пользователем) числа. Кроме того, пользователь должен иметь возможность адаптивно менять сеть (например, плотность сети в определенных областях).

2. Решение проблемы

Без потери общности, будем рассматривать поверхность S, заданную в виде бикубического B-сплайна.

Шаг 1. Трансформируем данный бикубический B-сплайн в бикубическую форму Bezier. Это является стандартной процедурой в CAGD ([1]), и она может быть реализована подпрограммой, скажем, “Bezier”.

Предположим, теперь у нас есть прямоугольная сеть точек b3n,3k, и все они принадлежат S (см. [6]) . Рассмотрим

прямоугольную область R , натянутую на точки A nk, что имеет место гомеоморфизм

g: R ^ S, g( A nk) = b 3n’3k .

4

Вообще говоря, мы можем рассмотреть многогранник P вместо прямоугольника R, где P L R ([3]).

Шаг 2. Чтобы построить начальную сеть, мы выбираем точки из множества {b 3n,3k }. Мы хотим, чтобы начальная сеть удовлетворяла требованию соотношения сторон (aspect ratio). Подпрограмма, скажем, “Initial” использует

технику диагонального транспонирования [3]: она рассматривает прямоугольник A00 A 01A10 A11, сравнивает

b 0,0 b 3,3 и b 0,3 b 3,0 , и выбирает кратчайшую диагональ, чтобы разбить прямоугольник на два треугольника.

Шаг 3 a. Для процесса подразбиения, мы предлагаем интерполяционную Modified Butterfly схему ([4]). Она является С1-непрерывной на регулярных сетях. В отличие от аппроксимирующих схем, основанных на сплайнах, она

не дает кусочно-полиномиальной поверхности в пределе. Мы можем предполагать, что поверхности подразбиений fk

(R) приближаются к заданной поверхности S. Здесь fk ^ f , и f (R) является поверхностью подразбиения. После четвертого шага подразбиения, мы получаем соответствующую треугольную сеть (см. [7]).

Пользователь может интерактивно менять уровень подразбиения в различных областях. Эту подпрограмму мы назвали “Subdivision”.

Шаг 3b. Вместо Modified Butterfly схемы, иногда выгоднее использовать другие треугольные схемы. Одной из наиболее популярных схем является аппроксимирующая Loop схема [4]. В сущности, это простейшая схема вставки вершин в треугольные сети, предложенная Чарльзом Лупом. Схема основана на так называемом трехнаправленном коробчатом сплайне, она генерирует C2-непрерывные поверхности на регулярных сетях. В общем же случае, Loop схема генерирует поверхности, которые C2-непрерывны всюду, за исключением особых вершин, где они являются Ct-непрерывными. Схема может быть применена к произвольным "многоугольным" сетям, т.е. состоящим из многоугольников. "Многоугольная" сеть преобразуется в треугольную, к примеру, посредством триангуляции каждой многоугольной грани. Программа подразбиений была написана моим коллегой Никитой Кожекиным на Microsoft Visual C++, используя MFC (Microsoft Foundation Classes) технологию, OpenGL и VTK (свободно-распространяемый инструмент визуализации).

Шаг 4. После k-того уровня подразбиений мы проектируем (посредством подпрограммы “Projection”) сеть на поверхность S.

Шаг 5. Теперь мы проверяем условие, что соответствующие треугольники плотно прилегают к поверхности S, для чего измеряем расстояние от барицентра треугольника до поверхности. Назовем эту подпрограмму “Distance”. Чтобы сеть соответствовала предъявляемым к ней требованиям, мы можем использовать метод [5] для разбиения больших треугольников в несколько меньших по размеру.

Литература

1. Gerald Farm “Curves and surfaces for CAGD” // Academic press, 1993.

2. Ho-Le K. “Finite element mesh generation methods: review and classification” // Computer-Aided Design, 20:27-38, 1988

3. K.-J. Bathe “Finite Element Procedures” // Prentice-Hall, 1996

4. “Subdivision for Modeling and Animation” // SIGGRAPH 99 Course Notes.

5. Rivara M.C. “Algorithms for refining triangular grids suitable for adaptive and multi-grid techniques” // Int. J. Numer. Meth. Eng. Vol 20 (1984) pp. 745-756.

6. Dmitry Berzin "Finite element mesh generation using subdivision technique" // Международный научноисследовательский журнал = Research Journal of International Studies, №8 (27) 2014, p. 6

7. Dmitry Berzin "Finite element automatic mesh generation using Modified Butterfly subdivision scheme" // Международный научно-исследовательский журнал = Research Journal of International Studies, №8 (27) 2014, p. 8

8. Dmitry Berzin "Finite element mesh automatic generation using triangilar subdivision schemes" // Международный научно-исследовательский журнал = Research Journal of International Studies, №9 (28) 2014, p. 5

References

1. Gerald Farin “Curves and surfaces for CAGD” // Academic press, 1993.

2. Ho-Le K. “Finite element mesh generation methods: review and classification” // Computer-Aided Design, 20:27-38, 1988

3. K.-J. Bathe “Finite Element Procedures” // Prentice-Hall, 1996

4. “Subdivision for Modeling and Animation” // SIGGRAPH 99 Course Notes.

11

Международный научно-исследовательский журнал ■ № 10 (41) ■ Часть 4 ■ Ноябрь

5. Rivara M.C. “Algorithms for refining triangular grids suitable for adaptive and multi-grid techniques” // Int. J. Numer. Meth. Eng. Vol 20 (1984) pp. 745-756.

6. Dmitry Berzin "Finite element mesh generation using subdivision technique" // Research Journal of International Studies, №8 (27) 2014, p. 6

7. Dmitry Berzin "Finite element automatic mesh generation using Modified Butterfly subdivision scheme" // Research Journal of International Studies, №8 (27) 2014, p. 8

8. Dmitry Berzin "Finite element mesh automatic generation using triangilar subdivision schemes" // Research Journal of International Studies, №9 (28) 2014, p. 5

DOI 10.18454/IRJ.2015.41.043 Берзин Д.В.

Кандидат физико-математических наук, доцент,

Финансовый университет при Правительстве Российской Федерации, Москва О ВАРИАЦИОННОЙ ЗАДАЧЕ ДЛЯ ДЕФОРМАЦИИ ПАРАМЕТРИЧЕСКОЙ ПОВЕРХНОСТИ

Аннотация

Допустим, мы решили трансформировать поверхность минимальным образом, чтобы соблюсти определенные условия непрерывности с ее соседями. В настоящей работе сформулирована проблема достижения условия 1

непрерывности G и выписаны соответствующие уравнения для решения этой задачи.

1

Ключевые слова: информационные технологии, условие непрерывности G , NURBS, оптимальное решение

Berzin D.V.

PhD in Physics and Mathematics, Associate Professor,

Financial University under the Government of the Russian Federation, Moscow ABOUT A VARIATIONAL PROBLEM FOR PARAMETRIC SURFACE DEFORMATION

Abstract

l

Suppose we want to deform a base surface of a face to achieve certain continuity condition (for example, G continuity)

l

with the given neighbors at common edges. We formulate a problem for preserving G continuity and give equations for a deformation that changes the surface geometry as little as possible.

l

Keywords: Information technology, G continuity, NURBS, optimal solution.

Предположим, что грань F0 окружена некоторым количеством соседних граней F1, F2, .... Мы хотим деформировать (начальную) базовую поверхность грани F0 для того, чтобы достичь некоторого условия

непрерывности (например, условия G1) с данными соседними поверхностями у общих ребер. Такая деформация должна минимально изменять геометрию поверхности.

1. Функционал “сдвиг кривой”

Обозначим векторы начальных и измененных (деформированных) контрольных точек как P0 = {P0 }, P = {P^. }

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

соответственно. Рассмотрим кривую c 0 (t), которая принадлежит (или располагается рядом с) начальной (не деформированной) поверхности S(P0). Пусть

w = w(c0, t) = (u(t),(v(t)) (1)

uv-кривая, соответствующая c0 (t). Рассмотрим класс трехмерных кривых с фиксированным w и переменной P:

n m

c „ (P)(t) = X X P ij N i,p (u(t))N jq (v(t)) (2)

i=0 j=0

Рассмотрим функционал

D(P) = D(c0, c w ( P)), (3)

который выражает расстояние (или максимальный зазор) между начальной и деформированной кривыми. Назовем этот функционал “сдвиг кривой”.

2. Другие функционалы

Рассмотрим еще два типа функционалов: H(P) и G(P). Функционал H(P), который мы назовем "сдвиг контрольной

точки" выражает расстояние между множеством контрольных точек P0 и P. H(P) служит для контроля отклонения деформированной поверхности от начальной. Функционал "непрерывности" G(P) служит для того, чтобы

выполнялось условие непрерывности, например, условие G 1 с соседними гранями.

1

3. Квази-G

1

Вместо условия G , мы можем попытаться достичь несколько другого (и в некотором смысле более строгого

1

условия, чем G ), которое, тем не менее, приведет к линейности в вариационной задаче. Пусть E - это произвольная, но фиксированная точка на некотором ребре, которое является общим для грани F0 и соседней грани F1. 12

12

i Надоели баннеры? Вы всегда можете отключить рекламу.