Реконструировать все края в треугольной сеткеC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Реконструировать все края в треугольной сетке

Сообщение Anonymous »

У меня есть треугольная сетка, которая содержит миллионы треугольников. В настоящее время в моей структуре данных хранятся только треугольники и вершины. Я хочу реконструировать все края и сохранить их в контейнере для данных. Идея может быть похожа на следующее: пересечь все треугольники, получить каждые две его вершины и создать преимущество между ними. Вопрос в том, что общий край может быть создан дважды. Таким образом, чтобы преодолеть эту проблему, мне нужен контейнер данных EdgeContainer , чтобы сохранить края, и у него должна быть функция, чтобы проверить, был ли этот край уже создан. Так что это похоже на карту с несколькими ключами, но в соответствии с моим вопросом, эта карта также должна иметь следующие функции: < /p>


[*]

Код: Выделить всё

EdgeContainer(v1, v2)
должен вернуть тот же результат, что и EdgeContainer (v2, v1) , где v1 и v2 являются указателями на две вершины.
[*]

Код: Выделить всё

EdgeContainer
должна иметь такую ​​функцию, как EdgeContainer :: Remove (v1) , которая удалит все ребра, связанные с Vertex v1 .
Реализация должна быть как можно более эффективно.>

Подробнее здесь: https://stackoverflow.com/questions/222 ... angle-mesh
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»