Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Алгоритмы > триангуляция полигона с дырами |
Автор: Гость_Игорь 16.6.2005, 15:38 |
Люди, просьба поделиться опытом. Нужен алгоритм для триангуляции поверхности с полигонами у которых есть дырки, или непересекаемые ломанные линии внутри. Есть отработанный алгоритм Делоне для поверхности из точек, есть Ухорезка для полигонов тоже хорошо работает, но не с дырками. Заранее спасибо. |
Автор: ChofCh 17.6.2005, 02:49 |
http://algolist.manual.ru/maths/geom/polygon/decompose_seidel.php |
Автор: Гость_Игорь 17.6.2005, 12:25 |
Да, спасибо, я это пробовал, там готовая DLL. Как правило почти всегда встречается либо частичное описание, либо готовая DLL. но хочется не этого, а хочется либо открытый код, либо детальное описание алгоритма, чтоб реализовть можно было потому как собираюсь немного переделывать. всёравно спасибо. |
Автор: Earnest 18.6.2005, 08:06 |
Есть книга: "Вычислительная геометрия и компьютерная графика на C++", Майкл Ласло. Издательство BINOM. Книга у меня уже несколько лет, поэтому не знаю, можно ли ее сейчас найти. По-моему, книга замечательная, содержит очень доступное описание многих геометрических алгоритмов. В частности, там описывается несколько алгоритмов триангуляции полигона, например, путем расщепления произвольного полигона на т.н. монотонные части, затем триангуляция каждого по отдельности. |
Автор: Guest 20.6.2005, 13:46 |
Можно посмотреть в CGAL (в районе http://www.cgal.org/Manual/doc_html/cgal_manual/Partition_2/Chapter_main.html) в Wild Magic (в районе http://www.geometrictools.com/SourceCode.html) и в FastGEO (в районе http://www.partow.net/projects/fastgeo/index.html) Да и насколько я помню, у Manoche-Seidel всегда были исходники на сайте. Еще кажется триангуляция произвольных поверхностей была в книге Аммералла (в одном из 4-х его томов). Не уверен, что для такого случая у него были готовые исходники, но алгоритм был, т.к. я такую триангуляцию написал после прочтения его. К сожалению, дело было очень давно, лет 12 назад, и поэтому исходники не сохранились. |
Автор: Гость_Игорь 21.6.2005, 12:01 |
да, срасибо, вот, нашёл вроде подходящую http://www.codeproject.com/cpp/hgrd.asp |