Começando

Aspose.3D FOSS para Python

Bem-vindo a Aspose.3D FOSS para Python, uma biblioteca gratuita, licenciada sob MIT, para carregar, construir e exportar cenas 3D a partir de Python. Este guia levará você de um ambiente recém-configurado a uma cena funcional em poucos minutos.


Pré-requisitos

Antes de instalar, certifique-se de que seu ambiente atende a estes requisitos:

Versão do Python

  • Python 3.7, 3.8, 3.9, 3.10, 3.11, or 3.12
  • CPython é o interpretador de referência; todas as seis versões são testadas em cada lançamento

Gerenciador de Pacotes

  • pip (incluído em todas as instalações modernas de Python)
  • Nenhuma outra ferramenta de compilação, compilador ou pacote de sistema é necessário

Sistema Operacional

  • Windows, macOS e Linux são todos suportados
  • A biblioteca é pura Python: nenhuma extensão nativa específica de plataforma para compilar

Instalação

Instale a partir do PyPI usando pip:

pip install aspose-3d-foss

Veja o Guia de Instalação para configuração de ambiente virtual, etapas de verificação e um exemplo de código de início rápido.


Aspose.3D FOSS para Python

Depois de instalado, você pode imediatamente:

  • Carregar arquivos OBJ (com suporte a material .mtl), STL, glTF 2.0, GLB, COLLADA e 3MF
  • Inspecionar hierarquias de cena: percorrer nós, ler malhas, acessar normais de vértice e UVs
  • Transformar cenas: aplicar posições, rotações (via Quaternion), e escalas usando Transform
  • Aplicar materiais: trabalhar com LambertMaterial e PhongMaterial nos nós da cena
  • Exportar para qualquer formato suportado com opções de salvamento por formato
  • Calcular geometria: consultar caixas delimitadoras, acumular transformações em espaço mundial com GlobalTransform
  • Ler animação: acessar AnimationClip e KeyframeSequence dados de arquivos glTF e COLLADA carregados

Início Rápido

O código a seguir carrega um arquivo de cena, imprime os filhos do nó raiz e salva novamente a cena no formato GLB:

from aspose.threed import Scene

scene = Scene.from_file("input.obj")

print(f"Root node children: {len(scene.root_node.child_nodes)}")
for node in scene.root_node.child_nodes:
    entity_type = type(node.entity).__name__ if node.entity else "no entity"
    print(f"  {node.name} [{entity_type}]")

scene.save("output.glb")
print("Saved output.glb")

Próximas Etapas

 Português