FileFormat
Methods
FileFormat служит как описателем формата, так и реестром всех поддерживаемых 3D файловых форматов. Каждый формат представлен как FileFormat экземпляр, доступный как атрибут класса или через статические фабричные методы. Вы передаёте FileFormat экземпляры в Scene.save() чтобы принудительно задать конкретный формат, или используйте FileFormat.detect() для определения формата неизвестного файла.
Methods: aspose.threed
from aspose.threed import FileFormatПоддерживаемые константы форматов
Константы форматов, которые активно поддерживаются (зарегистрированы импортеры и/или экспортеры) в FOSS‑выпуске, показаны ниже. Константы, перечисленные как None в исходном коде зарезервированы имена форматов, которые ещё не реализованы.
Активно поддерживаемые (релиз FOSS)
| Methods | Methods | Methods |
|---|---|---|
FileFormat.WAVEFRONT_OBJ() | .obj | Статический метод, возвращающий ObjFormat экземпляр |
FileFormat.GLTF2() | .gltf / .glb | glTF 2.0; статический метод, возвращающий GltfFormat экземпляр |
FileFormat.FBX7400ASCII() | .fbx | FBX 7.4 ASCII; статический метод |
FileFormat.MICROSOFT_3MF | .3mf | 3MF (set at module load) |
FileFormat.COLLADA | .dae | Methods |
FileFormat.STL_BINARY | .stl | STL binary (устанавливается при загрузке модуля) |
FileFormat.STLASCII | .stl | STL ASCII |
Methods
Версии FBX 6100–7700 (binary), Maya ASCII/Binary, Discreet 3DS, Universal 3D, GLTF 1.0, GLTF binary, PDF, Blender, DXF, PLY, X (binary/text), Draco, RVM, ASE, IFC, Siemens JT, AMF, VRML, HTML5, ZIP, USD/USDA/USDZ, XYZ, PCD, PCD binary.
Статические методы
| Methods | Тип возвращаемого значения | Methods |
|---|---|---|
FileFormat.detect(stream, file_name) | `FileFormat | None` |
FileFormat.get_format_by_extension(ext) | `FileFormat | None` |
Свойства экземпляра
| Methods | Methods | Methods |
|---|---|---|
extension | str | Основное файловое расширение (без ведущей точки) |
extensions | list[str] | Все расширения, поддерживаемые этим форматом |
content_type | str | Строка MIME‑типа |
can_export | bool | Поддерживается ли экспорт в этот формат |
can_import | bool | Поддерживается ли импорт из этого формата |
version | str | Строка версии формата |
Методы экземпляра
| Methods | Тип возвращаемого значения | Methods |
|---|---|---|
create_load_options() | LoadOptions | Создаёт соответствующий формату LoadOptions подкласс |
create_save_options() | SaveOptions | Создаёт соответствующий формату SaveOptions подкласс |
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__)