3D на Python

3D-моделювання та візуалізація стали невід’ємною частиною різних галузей, таких як ігри, архітектура та віртуальна реальність. У цій статті ми розглянемо, як працювати з 3D-моделями в Python, зосереджуючись на створенні та читанні сцен 3D-моделі. Ми дослідимо бібліотеку Aspose.3D на Python, потужний і простий у використанні інструмент для створення, обробки та читання 3D-моделей. Давайте поринемо в 3D-моделювання за допомогою Python!

Ця стаття охоплює такі теми:

  1. 3D-бібліотека Python – 3D у Python
  2. Створіть просту 3D-сцену в Python
  3. Створіть матеріал у 3D-сцені
  4. Додайте світло до 3D-сцени
  5. Створіть примітивну 3D-модель на Python
  6. Прочитати 3D-сцену в Python

Бібліотека 3D Python – 3D на Python

Aspose.3D for Python — це універсальне, багатофункціональне та високоефективне рішення для 3D-моделювання для розробників Python. Він пропонує повний набір функцій, які дозволяють користувачам легко створювати, читати та змінювати 3D-моделі. Деякі ключові функції цієї бібліотеки Python 3D включають:

  • Підтримка популярних форматів файлів 3D, таких як FBX, OBJ, STL тощо
  • Високопродуктивні можливості 3D-рендерінгу та візуалізації
  • Розширені інструменти управління сценою та маніпуляції
  • Розширена документація та зразки коду, які допоможуть розробникам швидко розпочати роботу

Будь ласка, завантажте пакет або інсталюйте API з PyPI за допомогою такої команди pip у консолі:

pip install aspose-3d

Створіть базову 3D-сцену в Python

Ми можемо створити просту 3D-сцену, виконавши наведені нижче дії.

  1. Створіть екземпляр класу Scene.
  2. Після цього викличте метод createchildnode(), щоб додати деяку геометрію, форму для показу на екрані, наприклад, сферу.
  3. Нарешті, збережіть сцену як FBX за допомогою методу save().

У наступному прикладі коду показано, як створити просту 3D-сцену в Python.

# Цей приклад коду демонструє, як створити базову 3D-сцену.
from aspose.threed import Scene
from aspose.threed.entities import Sphere

# Створіть об'єкт класу Scene
scene = Scene()

# Створіть модель сфери
scene.root_node.create_child_node("Sphere", Sphere())

# Зберегти документ 3D сцени
scene.save("C:\\Files\\my_scene.fbx")
3D-сцена в Python

3D-сцена в Python.

Створіть матеріал у 3D-сцені за допомогою Python

Ми можемо створити матеріал із розсіяним кольором у 3D-сцені, виконавши наведені нижче дії.

  1. Створіть екземпляр класу Scene.
  2. Викличте метод createchildnode(), щоб додати сферу.
  3. Ініціалізуйте об’єкт класу LambertMaterial.
  4. Укажіть властивості diffusecolor і name.
  5. Після цього призначте матеріальний об’єкт моделі Сфера.
  6. Нарешті, збережіть сцену як FBX за допомогою методу save().

У наступному прикладі коду показано, як створити матеріал із розсіяним кольором у 3D-сцені за допомогою Python.

# Цей приклад коду демонструє, як створити матеріал у 3D-сцені.
from aspose.threed import Scene
from aspose.threed.entities import Sphere
from aspose.threed.utilities import MathUtils, Vector3
from aspose.threed.shading import LambertMaterial
from aspose.pydrawing import Color

# Створіть об'єкт класу Scene
scene = Scene()

# Створіть модель сфери
node = scene.root_node.create_child_node("Sphere", Sphere())

# Встановити LambertMaterial
material = LambertMaterial()
material.diffuse_color = Vector3(Color.red)
material.name = "Lambert"

# Призначити моделі сфери
node.material = material

# Зберегти документ 3D сцени
scene.save("C:\\Files\\material_scene.fbx")
Матеріал у 3D сцені

Створення матеріалу в 3D сцені.

Додайте світло до 3D-сцени за допомогою Python

Ми також можемо додати світло до 3D-сцени, виконавши наведені нижче дії.

  1. Створіть екземпляр класу Scene.
  2. Викличте метод createchildnode(), щоб додати сферу.
  3. Ініціалізуйте об’єкт класу Light.
  4. Вкажіть тип світла та властивості імені.
  5. Після цього викличте метод createchildnode(), щоб додати сутність світла.
  6. Нарешті, збережіть сцену як FBX за допомогою методу save().

У наступному прикладі коду показано, як створити світло в 3D-сцені за допомогою Python.

# Цей приклад коду демонструє, як створити світло в 3D-сцені.
from aspose.threed import Scene
from aspose.threed.entities import Sphere, Light, LightType
from aspose.threed.utilities import MathUtils, Vector3
from aspose.threed.shading import LambertMaterial
from aspose.pydrawing import Color

# Створіть об'єкт класу Scene
scene = Scene()

# Створіть модель сфери
scene.root_node.create_child_node("Sphere", Sphere())

# Додати сутність Light
light = Light() 

# Точкове світло
light.light_type = 0

# Ім'я
light.name = "Light";

# Додайте до сцени
scene.root_node.create_child_node(light).transform.translation = Vector3(10, 0, 10);

# Зберегти документ 3D сцени
scene.save("C:\\Files\\light_scene.fbx")

Примітивна 3D модель Python

Примітив — це об’ємна геометрична форма, яка є основою для створення складних геометричних форм. Ми можемо створити примітивну 3D-модель, виконавши кроки, згадані раніше. Однак нам потрібно додати кілька геометричних фігур або об’єктів, як показано в прикладі коду нижче:

# Цей приклад коду демонструє, як створювати примітивні 3D-моделі
from aspose.threed import Scene
from aspose.threed.entities import Box, Cylinder
from aspose.threed.utilities import MathUtils, Vector3

# Ініціалізація об'єкта Scene
scene = Scene()

# Створіть модель Box
box = Box();
box.name = "Box";
scene.root_node.create_child_node(box)

# Створіть модель циліндра
cylinder = Cylinder();
cylinder.name = "Cylinder";
scene.root_node.create_child_node(cylinder)

# Зберегти документ 3D сцени
scene.save("C:\\Files\\primitive_scene.fbx")

Прочитайте 3D-сцену в Python

Ми можемо прочитати 3D-сцену з документа FBX, виконавши наведені нижче дії.

  1. Створіть екземпляр класу Scene.
  2. Завантажте існуючий 3D-документ за допомогою методу open().
  3. Цикл через дочірні вузли.
  4. Нарешті, відобразити значення властивостей.

У наступному прикладі коду показано, як завантажити та прочитати 3D-сцену в Python.

# Цей приклад коду демонструє, як читати 3D-сцену.
from aspose.threed import Scene

# Ініціалізація об’єкта класу Scene
scene = Scene()

# Завантажте існуючий 3D-документ
scene.open("C:\\Files\\primitive_scene.fbx")

for node in scene.root_node.child_nodes:
    entity = node.entity;
    print("{0}", entity.name); 
{0} Box
{0} Cylinder

Отримайте безкоштовну ліцензію

Ви можете отримати безкоштовну тимчасову ліцензію, щоб спробувати Aspose.3D for Python без оціночних обмежень.

3D у Python – навчальні ресурси бібліотеки 3D Python

Ви можете дізнатися більше про створення та маніпулювання 3D-моделями та сценами в Python, а також дослідити інші функції бібліотеки за допомогою наведених нижче ресурсів:

Висновок

У цій статті ми представляємо бібліотеку Aspose.3D і демонструємо її можливості у створенні, читанні та маніпулюванні 3D-моделями в Python. Завдяки підтримці різних форматів 3D-файлів, розширеному управлінню сценою та високопродуктивному рендерингу бібліотека Aspose.3D є безцінним інструментом для розробників Python, які працюють із 3D-контентом. Використовуючи бібліотеку Aspose.3D, ви можете оптимізувати свої проекти 3D-моделювання та легко створювати приголомшливі 3D-сцени. У разі будь-яких неясностей зв’яжіться з нами на нашому безкоштовному форумі підтримки.

Дивись також