Изменения

Перейти к: навигация, поиск
Нет описания правки
РСДС состоит из 3 компонент:
*''Vertex'' {{---}} это точка сочленения. Содержит координаты точки. А также указатель на инцидентное ребро.
*''Face'' {{---}} содержит указатель на наружную компоненту (некоторое ребро на его границе). Для неограниченных поверхностей это nil. Так же содержит внутреннюю компонентусписок указателей на внутренние компоненты (дырки), которая то есть указатель , по указателю на некое ребро, с которого можно начать описывать внутреннюю область одно из инцидентных каждой дырке рёбер (опять жеnil, может быть nilесли дырок нет).
*''Half-edge'' {{---}} это ребро. Содержит указатели на точку, откуда исходит (origin), указатель на ребро близнец (twin)(направленное в другую сторону), инцидентную поверхность (incident_face), и указатели на следующее и предыдущие ребра.
<pre>
<pre>
struct face {
outer_component half_edge *out; inner_components list<half_edge*> in; (список какой-нибудь)
};
</pre>
|[[Файл:next.png|400px|thumb|right|Добавляем жирную прямую. [a+b] это ребро, которое было в начальном face]]
|}
<b>Этот раздел читать довольно бесполезно, нужно переписать сюда соответствующую главу из де Берга.</b>
 
У нас есть множество прямых. Мы хотим представить это множество в виде РСДС.
==См. также==
[http://cs.stackexchange.com/a/18167 Источник.]
 
[[Категория:Алгоритмы]]
[[Категория:Теория графов]]
[[Категория:Вычислительная геометрия]]
202
правки

Навигация