Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблемма с полигонами, корявые получаются [Delphi, C++ Builder, Windows]


DDS ©   (2003-11-14 00:12:00) 

Когда прога рисует полигон то она берет как бы основную
точку и тянет от нее линии ко всем остальным точкам многоугольника.
Как задать эту точку которая соединяет с собой эти вершины.
А то у меня другие точки стоят друг перед другом и надо получить ломаную
а когда я начинаю рисовать многоугольник то лучи от этой самой точки перекрываются друг с другом и получается ерунда.

Или как просто начертить многоугольник соединяя (для полигона) точки
по цепи друг за другом.

Не знаю понятно ли обьяснил. По другому не могу выразиться.


MrAngel   (2003-11-22 16:24:00) [1]

Есть набор точек (вертексов) мэша. Если их выводить как точки, то всё нормально.
Но, если начать вывод через треугольники получается ерёнда :))


MeF88   (2003-11-21 11:54:00) [2]

Что надо конкретно нарисовать? Полигон? Линию?


MrAngel   (2003-11-20 22:55:00) [3]

Хмм у меня похожая ситуация. Если рисовать только точки то видно что фигура прорисовывается корректно.

Однако ни GL_TRIAGLE_STRIP ни GL_TRIANGLE_FAN не помогают корректно нарисовать фигуру.

Дело в том что я не знаю как эти индексы рисовать в нужном порядке - короче голова кругом уже ходит :-)


DDS   (2003-11-18 11:24:00) [4]

Но тогда все надо рисать треугольниками,
и всю прогу переделывать.


VitGun   (2003-11-18 07:44:00) [5]

Я так и не понял до конца...если ты пишешь под OpenGL, то замени
glBegin(GL_TRIANGLE_FAN);

на

glBegin(GL_TRIAGLE_STRIP);

ИМХО так...


DDS   (2003-11-14 19:11:00) [6]

Когда заменяю заливку, на рисование линиями, то все выглядит правильно, (а вообще это из OpenGL)


BlackKing   (2003-11-14 10:16:00) [7]

a jesli hochesh sam, ukazivaj tochki v tom porjadke, v kakom oni dolzhni sojedinjaca, a ti pohozhe sojedinjajesh ih v proizvol'nom porjadke, ili ne pravil'no ukazal koordinati.


UnZero   (2003-11-14 10:13:00) [8]

Для построения полигонов попробуй поискать готовые алгоритмы на
http://alglib.chat.ru/или http://algolist.manual.ru/
Где-то там мне это попадалось.


BlackKing   (2003-11-14 09:41:00) [9]

U canvasa jest' metod, ili ti sam hochesh narisovat'?

TCanvas
procedure Polygon(Points: array of TPoint);

Canvas.Polygon.(Slice(PointArray, 10));
zagljani v help.


MBo   (2003-11-14 07:44:00) [10]

Непонятно.


Наверх

Титульная страница Поиск, карта сайта Написать письмо