Поиск:

Ответ в темуСоздание новой темы Создание опроса
> "Отсекание" треугольников при помощи указателей. 
:(
    Опции темы
FataList
Дата 4.7.2006, 10:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 27.6.2006

Репутация: нет
Всего: нет



Добрый день.

Есть полигон (многоугольник), который делю на треугольники. Координаты вершин находятся записываются в вектор (масссив вершин полигона).  
Код

vector<CPoint> Vertex_Polygon;

Написанный код нужно упростить, а именно отсекать треугольники, используя ссылки или указатели. Скорее указатели.
Меня посетила  мысль(я зевнул и перевернулся на другой бок  smile  )  : каждая точка в векторе будет иметь указатель на предыдущюю и последующую точки (вершины).
Во время выполнения кода, будут наступать моменты, когда одна из вершин полигона больше не пригодится, т.е. не сможет соединиться с другими вершинами. И тогда ее следует "отсечь" от исходного вектора. Например, убираем точку 2. На нее "указывают" 1-я и 3-я точка.
Делаем так, чтобы 1-я указывала на 3-ю, соответственно 3-я на 1-ю. 
Отсалось решить, как это реализовать.  Может сделать структуру в исходном векторе, и во время его заполнения, "направлять"  указатели. Но напрявлять указатели не знамо куда, то плохо. Промежуточные переменные использовать? 
Надо подумать.... 
PM MAIL   Вверх
Earnest
Дата 4.7.2006, 15:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 87
Всего: 183



Храни треугольники как треугольники, т.е. объекты, состоящие из 3 вершин (можно использовать не точки, а индексы вершин в исходном полигоне). Для того, чтобы помечать некоторые вершины полигона как полностью обработанные, используй параллельный массив флагов. Что с чем можно соединить, определяется автоматически: пропускаем соседние вершины, пока стоят флаги. 
В данном случае усложненная структура данных ничем не обоснована: никакого выигрыша, только замутнение алгоритма. 


--------------------
...
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.0398 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.