3D em Python

A modelagem e visualização 3D tornaram-se uma parte essencial de vários setores, como jogos, arquitetura e realidade virtual. Neste artigo, exploraremos como trabalhar com modelos 3D em Python, com foco na criação e leitura de cenas de modelos 3D. Exploraremos a biblioteca Aspose.3D em Python, uma ferramenta poderosa e fácil de usar para criar, manipular e ler modelos 3D. Vamos mergulhar na modelagem 3D com Python!

Este artigo abrange os seguintes tópicos:

  1. Biblioteca Python 3D – 3D em Python
  2. Crie uma cena 3D simples em Python
  3. Criar um material em cena 3D
  4. Adicionar luz a uma cena 3D
  5. Criar um modelo 3D primitivo em Python
  6. Leia cena 3D em Python

Biblioteca Python 3D – 3D em Python

Aspose.3D for Python é uma solução de modelagem 3D versátil, rica em recursos e altamente eficiente para desenvolvedores Python. Ele oferece um conjunto abrangente de recursos que permitem aos usuários criar, ler e modificar modelos 3D facilmente. Alguns dos principais recursos desta biblioteca Python 3D incluem:

  • Suporte para formatos de arquivo 3D populares, como FBX, OBJ, STL e mais
  • Renderização 3D de alto desempenho e recursos de visualização
  • Ferramentas avançadas de gerenciamento e manipulação de cena
  • Extensa documentação e exemplos de código para ajudar os desenvolvedores a começar rapidamente

Por favor, baixe o pacote ou instale a API do PyPI usando o seguinte comando pip no console:

pip install aspose-3d

Crie uma cena 3D básica em Python

Podemos criar uma cena 3D simples seguindo os passos abaixo:

  1. Crie uma instância da classe Scene.
  2. Depois disso, chame o método createchildnode() para adicionar alguma geometria, uma forma para mostrar na tela, por exemplo, uma esfera.
  3. Finalmente, salve a cena como FBX usando o método save().

O exemplo de código a seguir mostra como criar uma cena 3D simples em Python.

# Este exemplo de código demonstra como criar uma cena 3D básica.
from aspose.threed import Scene
from aspose.threed.entities import Sphere

# Crie um objeto da classe Scene
scene = Scene()

# Criar um modelo de esfera
scene.root_node.create_child_node("Sphere", Sphere())

# Salvar documento de cena 3D
scene.save("C:\\Files\\my_scene.fbx")
Cena 3D em Python

Cena 3D em Python.

Crie um material em cena 3D usando Python

Podemos criar o material com cor difusa em uma cena 3D seguindo os passos abaixo:

  1. Crie uma instância da classe Scene.
  2. Chame o método createchildnode() para adicionar uma esfera.
  3. Inicialize o objeto de classe LambertMaterial.
  4. Especifique as propriedades difusacolor e name.
  5. Depois disso, atribua o objeto material ao modelo Sphere.
  6. Finalmente, salve a cena como FBX usando o método save().

O exemplo de código a seguir mostra como criar material com cores difusas em uma cena 3D usando Python.

# Este exemplo de código demonstra como criar material em cena 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

# Crie um objeto da classe Scene
scene = Scene()

# Criar um modelo de esfera
node = scene.root_node.create_child_node("Sphere", Sphere())

# Definir LambertMaterial
material = LambertMaterial()
material.diffuse_color = Vector3(Color.red)
material.name = "Lambert"

# Atribuir ao modelo de esfera
node.material = material

# Salvar documento de cena 3D
scene.save("C:\\Files\\material_scene.fbx")
Material em cena 3D

Criação de material em cena 3D.

Adicionar luz a uma cena 3D usando Python

Também podemos adicionar luz a uma cena 3D seguindo os passos abaixo:

  1. Crie uma instância da classe Scene.
  2. Chame o método createchildnode() para adicionar uma esfera.
  3. Inicialize o objeto de classe Light.
  4. Especifique as propriedades lighttype e name.
  5. Depois disso, chame o método createchildnode() para adicionar a entidade light.
  6. Finalmente, salve a cena como FBX usando o método save().

O exemplo de código a seguir mostra como criar luz em uma cena 3D usando Python.

# Este exemplo de código demonstra como criar uma luz na cena 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

# Crie um objeto da classe Scene
scene = Scene()

# Criar um modelo de esfera
scene.root_node.create_child_node("Sphere", Sphere())

# Adicionar entidade de luz
light = Light() 

# O ponto de luz
light.light_type = 0

# Nome
light.name = "Light";

# Adicionar à cena
scene.root_node.create_child_node(light).transform.translation = Vector3(10, 0, 10);

# Salvar documento de cena 3D
scene.save("C:\\Files\\light_scene.fbx")

Modelo 3D Primitivo Python

Um primitivo é uma forma geométrica tridimensional que é a base para a criação de formas geométricas complexas. Podemos criar um modelo 3D primitivo seguindo as etapas mencionadas anteriormente. No entanto, precisamos adicionar várias formas ou objetos geométricos, conforme mostrado no exemplo de código abaixo:

# Este exemplo de código demonstra como criar modelos 3D primitivos
from aspose.threed import Scene
from aspose.threed.entities import Box, Cylinder
from aspose.threed.utilities import MathUtils, Vector3

# Inicializar um objeto Scene
scene = Scene()

# Criar um modelo de caixa
box = Box();
box.name = "Box";
scene.root_node.create_child_node(box)

# Criar um modelo Cilindro
cylinder = Cylinder();
cylinder.name = "Cylinder";
scene.root_node.create_child_node(cylinder)

# Salvar documento de cena 3D
scene.save("C:\\Files\\primitive_scene.fbx")

Ler cena 3D em Python

Podemos ler uma cena 3D do documento FBX seguindo as etapas abaixo:

  1. Crie uma instância da classe Scene.
  2. Carregue um documento 3D existente usando o método open().
  3. Loop através de childnodes.
  4. Por fim, exiba os valores de propriedade.

O exemplo de código a seguir mostra como carregar e ler uma cena 3D em Python.

# Este exemplo de código demonstra como ler uma cena 3D.
from aspose.threed import Scene

# Inicializar um objeto da classe Scene
scene = Scene()

# Carregar um documento 3D existente
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

Obtenha uma licença gratuita

Você pode obter uma licença temporária gratuita para experimentar o Aspose.3D para Python sem limitações de avaliação.

3D em Python – Recursos de aprendizado da biblioteca Python 3D

Você pode aprender mais sobre como criar e manipular modelos e cenas 3D em Python e explorar outros recursos da biblioteca usando os recursos fornecidos abaixo:

Conclusão

Neste artigo, apresentamos a biblioteca Aspose.3D e demonstramos seus recursos na criação, leitura e manipulação de modelos 3D em Python. Com suporte para vários formatos de arquivo 3D, gerenciamento de cena avançado e renderização de alto desempenho, a biblioteca Aspose.3D é uma ferramenta inestimável para desenvolvedores Python que trabalham com conteúdo 3D. Ao usar a biblioteca Aspose.3D, você pode simplificar seus projetos de modelagem 3D e criar cenas 3D impressionantes com facilidade. Em caso de ambiguidade, entre em contato conosco em nosso fórum de suporte gratuito.

Veja também