Analysis Situs или как препарировать B-Rep
"... Analysis situs... describes the relative situation of points and lines on surfaces, without consideration of their magnitude" (Henri Poincaré. Analysis Situs. 1895).
Analysis Situs — это исторически первое название топологии — раздела математики, изучающего наиболее общие геометрические преобразования. Так именовал топологию ее родоначальник Анри Пуанкаре. В переводе с латыни это кудрявое название есть всего лишь «анализ положения», то есть математический аппарат по выяснению общих свойств объектов — их отношений друг с другом. Основной топологический вопрос (по крайней мере, в области геометрического моделирования) — принадлежит ли точка телу. То есть каково положение (situs) точки относительно тела. Это небольшое введение поясняет, почему та программа, о которой пойдет речь, называется Analysis Situs.
Хороший программист, использующий OpenCascade, знает и любит Draw — очаровательную Tcl-консоль, из которой можно вызвать почти любую операцию геометрического ядра, но не только. Draw прекрасно подходит для отладки и профилирования алгоритмов, для интроспекции CAD-моделей, для юнит-тестирования, прототипирования и демонстраций. Не программа, а лампа джинна. Но есть и минусы, в частности, крутой порог вхождения в ряды пользователей этой утилиты. Виртуозное владение Draw приходит спустя месяцы интенсивной работы. Кроме того, получив навык владения консолью, вы не избавитесь от некоторых ограничений, но этот разговор мы продолжим в будущем. Сейчас же мы ограничимся презентацией нового приложения для анализа состава CAD-моделей. Итак, Analysis Situs.
Идея в следующем. Вы грузите свою модель (основной формат входа — STEP) и изучаете ее состав на уровне отдельно взятых граней, ребер и вершин. Выбирая грань, вы видите ее параметрический портрет и несущую поверхность. Ровно то же самое можно сделать в Draw, но ценой много больших усилий.
Сайт приложения находится на ГитЛабе. Скачать последнюю версию можно здесь.