FileFormat — Aspose.3D FOSS for .NET
Methods
Methods FileFormat клас є реєстром усіх підтримуваних 3D форматів файлів. Не існує публічних іменованих констант для окремих форматів — екземпляри форматів отримуються під час виконання за допомогою статичних методів виявлення або Formats колекції.
Реєстр форматів
Підтримувані формати реєструються внутрішньо. Використовуйте наступний API для доступу до них:
| Methods | Methods | Methods |
|---|---|---|
FileFormat.Formats | IList<FileFormat> | Усі зареєстровані екземпляри форматів |
FileFormat.Detect(string filePath) | FileFormat | Визначає формат за шляхом до файлу (за розширенням та вмістом) |
FileFormat.GetFormatByExtension(string ext) | FileFormat | Повертає формат для заданого розширення файлу (наприклад. ".obj") |
Зареєстровані формати включають: OBJ, STL, glTF/GLB, FBX, COLLADA, PLY та 3MF.
Methods
| Methods | Тип повернення | Methods |
|---|---|---|
Detect(string filePath) | FileFormat | Визначає формат за шляхом до файлу |
GetFormatByExtension(string ext) | FileFormat | Повертає формат, що відповідає розширенню |
CreateLoadOptions() | LoadOptions | Повертає параметри завантаження, відповідні цьому екземпляру формату |
CreateSaveOptions() | SaveOptions | Повертає параметри збереження, відповідні цьому екземпляру формату |
Примітка щодо CreateLoadOptions() / CreateSaveOptions(): Ці методи працюють коректно, коли викликаються на екземплярах формату, які повертаються Detect() або GetFormatByExtension() — кожен зареєстрований format перевизначає ці методи власною реалізацією. Виклик їх на необробленому базовому класі FileFormat екземпляр (не отриманий через реєстр) викидає NotImplementedException.
Methods
using Aspose.ThreeD;
using Aspose.ThreeD.Formats;
// Detect format from a file path
var format = FileFormat.Detect("model.obj");
Console.WriteLine(format.Extension); // ".obj"
// Get load options from the detected format instance
var loadOpts = format.CreateLoadOptions(); // returns ObjLoadOptions via polymorphism
// Load and save — format inferred from extension
var scene = new Scene();
scene.Open("model.obj");
scene.Save("output.glb"); // binary GLB inferred from .glb extension
// Enumerate all registered formats
foreach (var fmt in FileFormat.Formats)
Console.WriteLine($"{fmt.Extension}: import={fmt.CanImport}, export={fmt.CanExport}");