FileFormat — Aspose.3D FOSS for Python API Reference
Methods
FileFormat sirve tanto como descriptor de formato como registro de todos los formatos de archivo 3D compatibles. Cada formato se representa como un FileFormat instancia accesible como atributo de clase o mediante métodos de fábrica estáticos. Usted pasa FileFormat instancias a Scene.save() para forzar un formato específico, o usar FileFormat.detect() para identificar el formato de un archivo desconocido.
Methods: aspose.threed
from aspose.threed import FileFormatConstantes de Formato Compatibles
Las constantes de formato que están activamente soportadas (importadores y/o exportadores registrados) en la versión FOSS se muestran a continuación. Las constantes listadas como None en el código fuente son nombres reservados para formatos que aún no se han implementado.
Soportados Activamente (versión FOSS)
| Methods | Methods | Methods |
|---|---|---|
FileFormat.WAVEFRONT_OBJ() | .obj | Método estático que devuelve un ObjFormat instancia |
FileFormat.GLTF2() | .gltf / .glb | glTF 2.0; método estático que devuelve un GltfFormat instancia |
FileFormat.FBX7400ASCII() | .fbx | FBX 7.4 ASCII; método estático |
FileFormat.MICROSOFT_3MF | .3mf | 3MF (set at module load) |
FileFormat.COLLADA | .dae | Methods |
FileFormat.STL_BINARY | .stl | STL binario (establecido al cargar el módulo) |
FileFormat.STLASCII | .stl | STL ASCII |
Methods
Versiones FBX 6100–7700 (binario), Maya ASCII/Binario, Discreet 3DS, Universal 3D, GLTF 1.0, GLTF binario, PDF, Blender, DXF, PLY, X (binario/texto), Draco, RVM, ASE, IFC, Siemens JT, AMF, VRML, HTML5, ZIP, USD/USDA/USDZ, XYZ, PCD, PCD binario.
Métodos estáticos
| Methods | Tipo de retorno | Methods |
|---|---|---|
FileFormat.detect(stream, file_name) | `FileFormat | None` |
FileFormat.get_format_by_extension(ext) | `FileFormat | None` |
Propiedades de Instancia
| Methods | Methods | Methods |
|---|---|---|
extension | str | Extensión de archivo principal (sin el punto inicial) |
extensions | list[str] | Todas las extensiones compatibles con este formato |
content_type | str | Cadena de tipo MIME |
can_export | bool | Si la exportación a este formato está soportada |
can_import | bool | Si la importación desde este formato está soportada |
version | str | Cadena de versión del formato |
Métodos de instancia
| Methods | Tipo de retorno | Methods |
|---|---|---|
create_load_options() | LoadOptions | Crea el formato específico apropiado LoadOptions subclase |
create_save_options() | SaveOptions | Crea el formato específico apropiado SaveOptions subclase |
Methods
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__)