Программа для публикации 3D-моделей в Ignition Fuel #18

Closed
opened 2021-08-11 20:07:43 +03:00 by movefasta · 9 comments
movefasta commented 2021-08-11 20:07:43 +03:00 (Migrated from gitlab.com)

Цель: унификация формата публикации 3D-моделей деталей независимо от положения детали в сборке

Вариант реализации алгоритма публикации детали в виде алгоритма на языке Python:

  1. Парсить сборку в формате STEP с помощью библиотеки Open Cascade Technology (OCCT) и её python-обёрток pyOCCT или pythonocc
  2. Разбить сборку на фигуры/детали в виде объектов Shape
  3. Из каждого объекта фигуры выделить геометрическую часть(TopoDS_TShape), где нет свойств Location и Orientation, то есть эта часть должна быть одинаковой у объектов с одинаковой геометрией, но разным положением в пространстве и ориентацией.
  4. Для каждой геометрической части
    • Сформировать model.config и добавить туда адрес репозитория с хэшом конкретного commit, а также версию пакета из tag
      • Сформировать пакет для Ignition Fuel сервера с collision и visual моделями и sdf-файлом - одинаковые детали должны быть представлены одним и тем же пакетом; "одинаковость" деталей определяется с помощью сериализации геометрии (пример сериализации TopoDS_Shape в утилите Analysis Situs)
    • Опубликовать на сервере Ignition Fuel -
      Tutorial - REST API
  5. Создать пакет для Ignition Fuel для изначальной сборки, где детали были бы заданы с помощью uri деталей, созданных в п.4
  6. Алгоритм из пп.1-5 оформить в виде отдельного python-модуля
Цель: унификация формата публикации 3D-моделей деталей независимо от положения детали в сборке Вариант реализации алгоритма публикации детали в виде алгоритма на языке Python: 1. Парсить сборку в формате STEP с помощью библиотеки Open Cascade Technology (OCCT) и её python-обёрток [pyOCCT](https://github.com/trelau/pyOCCT) или [pythonocc](https://github.com/tpaviot/pythonocc) 2. Разбить сборку на фигуры/детали в виде объектов Shape 3. Из каждого объекта фигуры выделить геометрическую часть([TopoDS_TShape](https://dev.opencascade.org/doc/refman/html/class_topo_d_s___t_shape.html)), где нет свойств Location и Orientation, то есть эта часть должна быть одинаковой у объектов с одинаковой геометрией, но разным положением в пространстве и ориентацией. 4. Для каждой геометрической части * Сформировать model.config и добавить туда адрес репозитория с хэшом конкретного commit, а также версию пакета из tag * Сформировать пакет для Ignition Fuel сервера с collision и visual моделями и sdf-файлом - одинаковые детали должны быть представлены одним и тем же пакетом; "одинаковость" деталей определяется с помощью сериализации геометрии ([пример](https://gitlab.com/ssv/AnalysisSitus/-/blob/2565b006a20b91ad0460cb83915fdd737d7fb382/src/asiAlgo/auxiliary/asiAlgo_ShapeSerializer.cpp) сериализации TopoDS_Shape в утилите Analysis Situs) * Опубликовать на сервере [Ignition Fuel](https://gitlab.com/ignitionrobotics/web/fuelserver) - [Tutorial](https://ignitionrobotics.org/api/gazebo/4.1/meshtofuel.html) - [REST API](https://app.ignitionrobotics.org/api) 5. Создать пакет для Ignition Fuel для изначальной сборки, где детали были бы заданы с помощью uri деталей, созданных в п.4 6. Алгоритм из пп.1-5 оформить в виде отдельного python-модуля
movefasta commented 2021-08-11 20:07:43 +03:00 (Migrated from gitlab.com)

assigned to @movefasta

assigned to @movefasta
movefasta commented 2021-08-20 23:52:08 +03:00 (Migrated from gitlab.com)

changed the description

changed the description
movefasta commented 2021-09-11 18:37:36 +03:00 (Migrated from gitlab.com)

changed the description

changed the description
movefasta commented 2021-09-12 19:28:37 +03:00 (Migrated from gitlab.com)

changed title from {-Создать инструмент-} для публикации 3D-моделей {-и переиспользования их в других моделях-} to {+Программа+} для публикации 3D-моделей {+в Ignition Fuel+}

changed title from **{-Создать инструмент-} для публикации 3D-моделей {-и переиспользования их в других моделях-}** to **{+Программа+} для публикации 3D-моделей {+в Ignition Fuel+}**
movefasta commented 2021-09-12 19:28:37 +03:00 (Migrated from gitlab.com)

changed the description

changed the description
movefasta commented 2021-09-21 21:03:53 +03:00 (Migrated from gitlab.com)

assigned to @m.nikita and unassigned @movefasta

assigned to @m.nikita and unassigned @movefasta
movefasta commented 2021-09-23 17:38:19 +03:00 (Migrated from gitlab.com)

changed the description

changed the description
movefasta commented 2021-09-23 17:39:50 +03:00 (Migrated from gitlab.com)

changed the description

changed the description
movefasta commented 2021-09-23 17:40:04 +03:00 (Migrated from gitlab.com)

moved to ignition-fuel-export#1

moved to ignition-fuel-export#1
movefasta (Migrated from gitlab.com) closed this issue 2021-09-23 17:40:04 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
robossembler/robossembler.org#18
No description provided.