FileFormat — Aspose.3D FOSS for .NET
Example
Example FileFormat osztály egy regiszter az összes támogatott 3D fájlformátumról. Nincsenek nyilvános névvel ellátott konstansok az egyes formátumokhoz — a formátumpéldányok futásidőben szerezhetők be a statikus felfedezési módszerek vagy a Formats gyűjtemény.
Formátumnyilvántartás
A támogatott formátumok belsőleg vannak regisztrálva. Használd a következő API-t a hozzáféréshez:
| Example | Example | Example |
|---|---|---|
FileFormat.Formats | IList<FileFormat> | Minden regisztrált formátumpéldány |
FileFormat.Detect(string filePath) | FileFormat | Formátumot észlel egy fájl útvonalából (kiterjesztés és tartalom alapján) |
FileFormat.GetFormatByExtension(string ext) | FileFormat | Visszaadja a formátumot egy adott fájlkiterjesztéshez (pl. ".obj") |
A regisztrált formátumok közé tartoznak: OBJ, STL, glTF/GLB, FBX, COLLADA, PLY és 3MF.
Example
| Example | Visszatérési típus | Example |
|---|---|---|
Detect(string filePath) | FileFormat | Formátumot észlel egy fájl útvonalából |
GetFormatByExtension(string ext) | FileFormat | Visszaadja a kiterjesztésnek megfelelő formátumot |
CreateLoadOptions() | LoadOptions | Visszaadja a betöltési beállításokat, amelyek megfelelőek ehhez a formátumpéldányhoz |
CreateSaveOptions() | SaveOptions | Visszaadja a mentési beállításokat, amelyek megfelelőek ehhez a formátumpéldányhoz |
Megjegyzés a CreateLoadOptions() / CreateSaveOptions(): Ezek a módszerek helyesen működnek, ha hívják a formátumpéldányokon, amelyeket visszaad a Detect() vagy GetFormatByExtension() — minden regisztrált formátum felülírja ezeket a módszereket a saját megvalósításával. Ha ezeket egy nyers alaposztályon hívják FileFormat példány (nem a regisztráción keresztül szerzett) dob NotImplementedException.
Example
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.Name}: import={fmt.CanImport}, export={fmt.CanExport}");