FileFormat — Aspose.3D FOSS for .NET
Methods
Methods FileFormat la classe és un registre de tots els formats de fitxer 3D compatibles. No hi ha constants públiques amb nom per a formats individuals — les instàncies de format s’obtenen en temps d’execució mitjançant els mètodes estàtics de descobriment o el Formats col·lecció.
Registre de formats
Els formats compatibles es registren internament. Utilitzeu l’API següent per accedir-hi:
| Methods | Methods | Methods |
|---|---|---|
FileFormat.Formats | IList<FileFormat> | Totes les instàncies de format registrades |
FileFormat.Detect(string filePath) | FileFormat | Detecta el format a partir d’un camí de fitxer (per extensió i contingut) |
FileFormat.GetFormatByExtension(string ext) | FileFormat | Retorna el format per a una extensió de fitxer donada (p. ex. ".obj") |
Els formats registrats inclouen: OBJ, STL, glTF/GLB, FBX, COLLADA, PLY i 3MF.
Methods
| Methods | Tipus de retorn | Methods |
|---|---|---|
Detect(string filePath) | FileFormat | Detecta el format a partir d’un camí de fitxer |
GetFormatByExtension(string ext) | FileFormat | Retorna el format que coincideix amb l’extensió |
CreateLoadOptions() | LoadOptions | Retorna les opcions de càrrega adequades per a aquesta instància de format |
CreateSaveOptions() | SaveOptions | Retorna les opcions de desament adequades per a aquesta instància de format |
Nota sobre CreateLoadOptions() / CreateSaveOptions(): Aquests mètodes funcionen correctament quan es criden sobre instàncies de format retornades per Detect() o GetFormatByExtension() — cada format registrat el format sobreescriu aquests mètodes amb la seva pròpia implementació. Cridar-los sobre una classe base crua FileFormat instància (no obtinguda a través del registre) llança 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}");