проект MSF

Доброго всем кто почитывает мой блог!
Итак, сегодня, по-большому счету закончена основная логика MSF.
Алгоритм как я и предполагал оказался велосипедом, и судя по тому что мне пришлось пересмотреть за это время я не нашел ничего алгоритмически-подобного. Хорошо это или плохо? Время покажет. Цель поставлена амбициозная, поэтому такие мелочи пока меня не интересуют. Даже распараллеливать вычисления и переносить их на GPU пока не собираюсь, время просчета вполне приемлимое, да функций гибридного моделлинга не предвидится ).
Сегодня в первой редакции закончен алгоритм разделения видимого и невидимого контура.
А давайте лучше по скрину расскажу:

Скрин1.
 сцена из 6 граней, расположенных на разной глубине от картинной плоскости.


 Допустим есть N объектов сцены к-е загораживают друг друга, что мы обычно видим в режиме Solid(&Painted& so on...) - Видимую часть сцены - невидимая усечена. А что мы видим в режиме WireFrame(Проволочная модель и.т.п) - все ребра объектов сцены показаны тонкой линией, и сказать что дальше что ближе и что видимо и что не видимо по проволоке тоже однозначно нельзя. Да, в мозгу формируется представление сцены и можно домысливать что из этого - невидимая часть а что видимая. И что же мы видим на чертеже? Да! Невидимый контур показан штриховой линией и вопрос анализа видимости по чертежу - по сути уже не вопрос.Но ни один CAD(кроме специализированных пакетов - текла, эдванс) не предоставляет такой "услуги" - показать на виде-разрезе-фасаде - невидимый контур.
К тому же в СПДС,ЕСКД есть правило "максимальной глубины невидимости", она м.б равна 1 или 2, но не более 2. Т.е. если участок контура детали более чем дважды закрыт от наблюдателя, то он(участок) на данном виде не показывается. И чтобы автоматически генерировать чертежи в соответствии с этим условием необходимо эту самую глубину невидимости установить для каждого участка контура, каждой детали, на каждом виде. И иметь возможность задавать ее для каждой отдельной детали...

Все что как правило получаем автоматически с модели - видимую часть на указанной глубине и штриховки - части попавшие в разрез. Для КМ,КМД этого явно мало. Поэтому и смысла моделлировать например мконструкции в арчике мало - разве что изо-схемы делать наподобие этих. Но для этих целей и "дрова" подойдут - всмысле не нужно детализировать узлы. Схема сборочная.
Зачем я все это затеял если есть текла и эдванс?
Во-первых самому интересно смогу или нет.
Во-вторых -  это интересно.

На сегодня в той или иной степени законченности существуют след.части MSF:
1. Сортамент РФ, БД.
2. "Механика" сцены. Виды, пск, трансформации, проектор....
3. Анализатор видимости контура.
4. GDL-Объект спецификация, сводная спецификация, к-е предстоит немного переписать.
5. CAD к-й скомпонует макеты в нужных масштабах.
6. Полная башка идей по GUI...и отн. интерфейса параметризации мконструкций.
ИТОГО: КМД на отправочную марку. Со схемами тоже есть решение, но пока об этом рано.

Думается мне надо посидеть над окончательной "спецификацией" отн-но фичей к-е буду делать, дабы не растечься мыслью... Но в целом моя логика отн-но MSF описана здесь - прошу к обсуждению.

А теперь кино,
цвета глубины невидимости:
1- красный
2-синий
3-зеленый
4-желтый

Ролик - о том, как я тестировал алгоритм получения невидимого контура.


PS:
1. участки где "задвоен" невидимый и видимый контур, это небольшой баг, пока не пофиксил.
2.последние жесты мышью показывают участки контура с глубиной невидимости=4, в алгоритме эта глубина на момент съемки - не прописана, поэтому участки не присутствуют в результате, но найдена(позже дописал условие по цвету, кино переснимать было лень), скрин:

Комментарии

Популярные сообщения из этого блога

GDL. Объект для моделей из "оцилиндрованного бревна"

График функции в полярных координатах?! Легко!

Объект "Plan Marker"