FileFormat — Aspose.3D FOSS for Python API Reference
Enumerations
FileFormat funge sia da descrittore di formato sia da registro di tutti i formati di file 3D supportati. Ogni formato è rappresentato come un FileFormat istanza accessibile come attributo di classe o tramite metodi statici di fabbrica. Si passa FileFormat istanze a Scene.save() per forzare un formato specifico, oppure usare FileFormat.detect() per identificare il formato di un file sconosciuto.
Enumerations: aspose.threed
from aspose.threed import FileFormatCostanti di Formato Supportate
Le costanti di formato attivamente supportate (importatori e/o esportatori registrati) nella versione FOSS sono mostrate di seguito. Le costanti elencate come None nel codice sorgente sono nomi riservati per formati non ancora implementati.
Supportati Attivamente (versione FOSS)
| Enumerations | Enumerations | Enumerations |
|---|---|---|
FileFormat.WAVEFRONT_OBJ() | .obj | Metodo statico che restituisce un ObjFormat istanza |
FileFormat.GLTF2() | .gltf / .glb | glTF 2.0; metodo statico che restituisce un GltfFormat istanza |
FileFormat.FBX7400ASCII() | .fbx | FBX 7.4 ASCII; metodo statico |
FileFormat.MICROSOFT_3MF | .3mf | 3MF (set at module load) |
FileFormat.COLLADA | .dae | Enumerations |
FileFormat.STL_BINARY | .stl | STL binario (impostato al caricamento del modulo) |
FileFormat.STLASCII | .stl | STL ASCII |
Enumerations
Versioni FBX 6100–7700 (binario), Maya ASCII/Binario, Discreet 3DS, Universal 3D, GLTF 1.0, GLTF binario, PDF, Blender, DXF, PLY, X (binario/testo), Draco, RVM, ASE, IFC, Siemens JT, AMF, VRML, HTML5, ZIP, USD/USDA/USDZ, XYZ, PCD, PCD binario.
Metodi Statici
| Enumerations | Tipo di ritorno | Enumerations |
|---|---|---|
FileFormat.detect(stream, file_name) | `FileFormat | None` |
FileFormat.get_format_by_extension(ext) | `FileFormat | None` |
Proprietà dell’Istanza
| Enumerations | Enumerations | Enumerations |
|---|---|---|
extension | str | Estensione file primaria (senza punto iniziale) |
extensions | list[str] | Tutte le estensioni supportate da questo formato |
content_type | str | Stringa del tipo MIME |
can_export | bool | Se l’esportazione in questo formato è supportata |
can_import | bool | Se l’importazione da questo formato è supportata |
version | str | Stringa della versione del formato |
Metodi di Istanza
| Enumerations | Tipo di ritorno | Enumerations |
|---|---|---|
create_load_options() | LoadOptions | Crea il formato specifico appropriato LoadOptions sottoclasse |
create_save_options() | SaveOptions | Crea il formato specifico appropriato SaveOptions sottoclasse |
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__)