Заказчик
Отзывы фрилансеров:
+ 0
- 0
Зарегистрирован на сайте 5 лет и 5 месяцев
Бюджет:
по договоренности
Описание задачи:
Здравствуйте!
Нам нужен разработчик для создания консольной утилиты/скрипта (предпочтительно на Python) для конвертации файлов 3D-моделей из проприетарного формата .dcm в стандартный .obj.
Описание формата .dcm:
Файл .dcm представляет собой текстовый документ в формате XML. Ключевые данные о геометрии находятся внутри следующей структуры:
<Packed_geometry> -> <Binary_data> -> <CA>
Внутри тега <CA> содержатся два основных блока:
<Vertices>: Содержит информацию о вершинах модели.
<Facets>: Содержит информацию о треугольниках (гранях), которые соединяют эти вершины.
Содержимое обоих тегов — это бинарные данные, закодированные в Base64.
Проблема:
Простое декодирование из Base64 и попытки прочитать данные как стандартные массивы float'ов ( для вершин) или int'ов (для граней) не дают корректного результата. Данные очевидно обфусцированы и/или сжаты с использованием проприетарного метода.
Что требуется от исполнителя:
Провести реверс-инжиниринг бинарных данных внутри тегов <Vertices> и <Facets>.
Определить точный алгоритм обфускации/шифрования вершин.
Определить точный алгоритм сжатия/кодирования граней.
Написать утилиту (скрипт на Python), которая:
Принимает на вход путь к .dcm файлу.
Корректно извлекает и декодирует данные о вершинах и гранях.
Сохраняет полученную 3D-модель в виде стандартного файла .obj.
Что будет предоставлено для работы:
Программа-вьювер (.exe): У вас будет исполняемый файл программы, которая умеет правильно читать и отображать .dcm файлы. Это ваш главный инструмент для анализа.
Тестовый файл 1.dcm: Пример файла с 3D-моделью для анализа и тестирования.
Эталонный файл 1.obj: Та же самая 3D-модель, сохраненная в формате .obj. Вы сможете использовать его для проверки правильности работы вашего конвертера (сравнения геометрии).
в файлах пример файла дцм(1тхт) и его перевод другой программой в OBJ
эти файлы маленькие и содержат очень простую геометрию. типичные файлы дцм- инраторальные сканы по 16мб. малненькие файлы для удобства. можно 1-обж.тхх перевести в обж и открыть в 3д вьювере что бы посомтреть геометрию. есть возможность переводжить из стл в дцм и обратно для облегчения ривирс инжинеринга
Разделы:
Опубликован:
08.06.2025 | 02:38 [поднят: 08.06.2025 | 02:38]
Теги: написать программу, создать программу, разработать программу, разработчики программ, прикладной программист