Основной геометрический движок написан на C++20 для повышения производительности и окружен API Python для создания сценариев и разработки инструментов.
/>GitHub: https://github.com/LegendsDaD/ThreeDimensions
PyPI: https://pypi.org/project/threedimensions/
Что делает мой проект
ThreeDimensions обеспечивает:
• Ядро сетки, поддерживающее N-угольники и большие сетки
• Генерация примитивов (куб, сфера, цилиндр, конус, тор, плоскость)
• Операции редактирования (вытягивание, скос, вставка, редактирование вершин/граней/граней)
• Логические операции
• Модификатор подразделения поверхности
• Инструменты прореживания и изменения сетки
• Стек неразрушающих модификаторов (зеркало, массив, подразделение, логическое значение)
• Иерархическая система графов сцен
• Создание экземпляров и коллекций объектов
• Экспорт OBJ и STL
Если компилятор C++ недоступен во время установки, он автоматически возвращается к чистой реализации Python.
Минимальный пример:
Код: Выделить всё
import threedimensions as td
bat = td.Mesh.create_cylinder(radius=0.15, height=1.0)
bat.save("bat.obj")
Этот проект в первую очередь предназначен для:
- Разработчиков, создающих инструменты процедурного моделирования
- Инженеров, которым требуется программная генерация сетки
- Использование в образовательных целях (изучение топологии и геометрии сетки) системы)
- Разработчики, которым нужна логика моделирования в стиле Blender в коде.
Сравнение
В отличие от полноценных 3D-приложений, таких как Blender, ThreeDimensions не является Инструмент моделирования на основе графического пользовательского интерфейса. Это программируемый SDK.
По сравнению с облегченными библиотеками сеток на Python, этот проект больше ориентирован на:
- Неразрушающие рабочие процессы с помощью стека модификаторов
- Структуру графа сцены
- Гибридное ядро C++ для повышения производительности
- API, ориентированный на инструменты моделирования, а не просто сетчатые структуры данных
- ясности проектирования API
- архитектуре системы модификаторов
- решениях проектирования ядра сетки
/> - Аспекты производительности
- Отсутствуют основные инструменты моделирования
Подробнее здесь: https://stackoverflow.com/questions/799 ... fier-stack
Мобильная версия