FileFormat — Aspose.3D FOSS for Python API Reference
Enumerations
FileFormat serve tanto como descritor de formato quanto como registro de todos os formatos de arquivo 3D suportados. Cada formato é representado como um FileFormat instância acessível como um atributo de classe ou via métodos de fábrica estáticos. Você passa FileFormat instâncias para Scene.save() forçar um formato específico, ou use FileFormat.detect() para identificar o formato de um arquivo desconhecido.
Enumerations: aspose.threed
from aspose.threed import FileFormatConstantes de Formato Suportadas
Constantes de formato que são ativamente suportadas (importadores e/ou exportadores registrados) na versão FOSS são mostradas abaixo. Constantes listadas como None no código-fonte são nomes reservados para formatos ainda não implementados.
Suportados Ativamente (versão FOSS)
| Enumerations | Enumerations | Enumerations |
|---|---|---|
FileFormat.WAVEFRONT_OBJ() | .obj | Método estático que retorna um ObjFormat instância |
FileFormat.GLTF2() | .gltf / .glb | glTF 2.0; método estático que retorna um GltfFormat instância |
FileFormat.FBX7400ASCII() | .fbx | FBX 7.4 ASCII; método estático |
FileFormat.MICROSOFT_3MF | .3mf | 3MF (set at module load) |
FileFormat.COLLADA | .dae | Enumerations |
FileFormat.STL_BINARY | .stl | STL binário (definido ao carregar o módulo) |
FileFormat.STLASCII | .stl | STL ASCII |
Enumerations
versões FBX 6100–7700 (binário), Maya ASCII/Binário, Discreet 3DS, Universal 3D, GLTF 1.0, GLTF binário, PDF, Blender, DXF, PLY, X (binário/texto), Draco, RVM, ASE, IFC, Siemens JT, AMF, VRML, HTML5, ZIP, USD/USDA/USDZ, XYZ, PCD, PCD binário.
Métodos Estáticos
| Enumerations | Tipo de Retorno | Enumerations |
|---|---|---|
FileFormat.detect(stream, file_name) | `FileFormat | None` |
FileFormat.get_format_by_extension(ext) | `FileFormat | None` |
Propriedades da Instância
| Enumerations | Enumerations | Enumerations |
|---|---|---|
extension | str | Extensão de arquivo principal (sem ponto inicial) |
extensions | list[str] | Todas as extensões suportadas por este formato |
content_type | str | String de tipo MIME |
can_export | bool | Se a exportação para este formato é suportada |
can_import | bool | Se a importação a partir deste formato é suportada |
version | str | String de versão do formato |
Métodos de Instância
| Enumerations | Tipo de Retorno | Enumerations |
|---|---|---|
create_load_options() | LoadOptions | Cria o específico de formato apropriado LoadOptions subclasse |
create_save_options() | SaveOptions | Cria o específico de formato apropriado SaveOptions subclasse |
Enumerations
from aspose.threed import Scene, FileFormat
# Auto-detect and load
scene = Scene.from_file("model.obj")
# Save with explicit format (force GLB binary)
from aspose.threed.formats import GltfSaveOptions
opts = GltfSaveOptions()
opts.binary_mode = True
scene.save("output.glb", opts)
# Get format by extension
fmt = FileFormat.get_format_by_extension(".fbx")
if fmt:
print(fmt.can_import) # True
print(fmt.can_export) # True
# Create options from a format instance
fmt_obj = FileFormat.get_format_by_extension(".obj")
load_opts = fmt_obj.create_load_options() # ObjLoadOptions
save_opts = fmt_obj.create_save_options() # ObjSaveOptions
# Detect format from file stream
with open("unknown_file.bin", "rb") as f:
detected = FileFormat.detect(f, "unknown_file.bin")
if detected:
print(type(detected).__name__)