Introdução
Estamos lançando Aspose.3D FOSS para Python, uma biblioteca pure-Python para leitura, escrita e conversão de formatos de arquivo 3D comuns. A biblioteca é publicada no PyPI como aspose-3d-foss, possui licença MIT e não tem dependências externas.
Se você já precisou inspecionar ou converter arquivos 3D programaticamente (extrair contagens de vértices de malha, canalizar geometria OBJ para um script de processamento ou converter em lote arquivos STL para glTF para um visualizador web), esta biblioteca foi criada para esse caso de uso. Ela não requer driver gráfico, módulo de extensão nativo ou qualquer conexão com a nuvem.
O que está incluído
Grafo de Cena Principal
Cada arquivo é carregado em um Scene objeto que espelha a hierarquia de nós do arquivo original. Nós carregam Transform (translação, rotação, escala) e uma ou mais entidades anexadas, como Mesh, Camera, ou Light. O grafo de cena é o mesmo independentemente do formato de origem, portanto o código escrito para percorrer e processar a geometria funciona em todos os formatos suportados sem modificação.
Acesso à Geometria
Mesh objetos expõem:
control_points: lista de posições de vértices comoVector4(x, y, z, w)polygons: lista de listas de índices de faces (polígonos de aridade arbitrária, não apenas triângulos)get_element(VertexElementType): recupera camadas de dados de vértices nomeadas para normais, UVs, cores de vértice e grupos de suavização
Materiais
LambertMaterial e PhongMaterial carregam as propriedades de material lidas do OBJ .mtl arquivos (ambient, diffuse, specular, emissive, transparency, shininess). Os materiais sobrevivem à ida e volta de carregamento‑salvamento para formatos que os suportam.
Utilitários Matemáticos
Vector2, Vector3, Vector4, FVector3, Quaternion, Matrix4, e BoundingBox são incluídos como tipos de valor leves para cálculos de geometria.
Animação
O AnimationClip, AnimationNode, KeyframeSequence, e KeyFrame classes fornecem acesso a dados de animação por quadros‑chave de formatos que os contêm, como glTF e COLLADA.
Início Rápido
pip install aspose-3d-foss
Carregue um arquivo 3D e imprima a contagem de vértices de cada malha:
from aspose.threed import Scene
from aspose.threed.entities import Mesh
scene = Scene.from_file("model.obj")
def visit(node):
for entity in node.entities:
if isinstance(entity, Mesh):
print(f"{node.name}: {len(entity.control_points)} vertices, "
f"{len(entity.polygons)} polygons")
for child in node.child_nodes:
visit(child)
visit(scene.root_node)
Converta o mesmo arquivo para glTF:
from aspose.threed import Scene
from aspose.threed.formats import GltfSaveOptions
scene = Scene.from_file("model.obj")
scene.save("model.gltf", GltfSaveOptions())
Esse é o programa completo. Sem arquivos de configuração, sem chaves de API, sem chamadas de rede.
Formatos Suportados
| Formato | Extension(s) | Carregar | Salvar | Notas |
|---|---|---|---|---|
| Wavefront OBJ | .obj | Sim | Sim | .mtl carregamento de material suportado |
| STL | .stl | Sim | Sim | Binário e ASCII; opção de inversão do sistema de coordenadas |
| glTF 2.0 | .gltf, .glb | Sim | Sim | GLB (binário autônomo) suportado |
| COLLADA | .dae | Sim | Sim | ColladaSaveOptions disponível com flip_coordinate_system, enable_materials, indented |
| 3MF | .3mf | Sim | Sim | Adequado para fluxos de trabalho de impressão 3D |
| FBX | .fbx | Parcial | N/A | Apenas tokenizador; parser completo em desenvolvimento |
A detecção de formato é automática a partir da extensão do arquivo. Opções específicas de carregamento e salvamento de formato (ObjLoadOptions, StlSaveOptions, GltfSaveOptions, ThreeMfSaveOptions).
Código Aberto e Gratuito
A biblioteca tem licença MIT. Você pode usá‑la em aplicações comerciais, modificá‑la e redistribuí‑la sem restrições. O código fonte está disponível no GitHub sob a organização Aspose.
Não há níveis de uso, limites de tokens ou telemetria. A biblioteca realiza todo o processamento localmente.
Dependências: nenhum. O pacote é instalado como um wheel puro-Python sem extensões C e sem dependências de tempo de execução de terceiros.
Começando
- Instalar:
pip install aspose-3d-foss - Como fazer: Carregando arquivos: Como carregar modelos 3D em Python
- Como fazer: Convertendo arquivos: Como converter modelos 3D em Python
- Referência da API: Referência da API Aspose.3D FOSS para Python
- PyPI: aspose-3d-foss no PyPI
Conclusão
Aspose.3D FOSS for Python 26.1.0 cobre os formatos de arquivo 3D mais comuns usados em ferramentas, pipelines e aplicações web (OBJ, STL, glTF, COLLADA e 3MF) com uma API Python consistente e sem atritos de instalação. Se você encontrar um bug, um caso de borda não suportado ou um formato que precise ser adicionado, por favor abra uma issue no GitHub. Mantemos a biblioteca ativamente e recebemos contribuições.