FileFormat — Aspose.3D FOSS for .NET

FileFormat klasa je registar svih podržanih 3D formata datoteka. Ne postoje javne imenovane konstante za pojedinačne formate — instance formata se dobijaju u vreme izvršavanja putem statičkih metoda otkrivanja ili Formats kolekcija.

Registar formata

Podržani formati su interno registrovani. Koristite sledeći API za pristup njima:

FileFormat.FormatsIList<FileFormat>Sve registrovane instance formata
FileFormat.Detect(string filePath)FileFormatOtkriva format iz putanje datoteke (po ekstenziji i sadržaju)
FileFormat.GetFormatByExtension(string ext)FileFormatVraća format za datu ekstenziju datoteke (npr. ".obj")

Registrovani formati uključuju: OBJ, STL, glTF/GLB, FBX, COLLADA, PLY i 3MF.

Tip povratne vrednosti
Detect(string filePath)FileFormatOtkriva format iz putanje datoteke
GetFormatByExtension(string ext)FileFormatVraća format koji odgovara ekstenziji
CreateLoadOptions()LoadOptionsVraća opcije učitavanja odgovarajuće za ovu instancu formata
CreateSaveOptions()SaveOptionsVraća opcije čuvanja odgovarajuće za ovu instancu formata

Napomena o CreateLoadOptions() / CreateSaveOptions(): Ove metode rade ispravno kada pozvane na instancama formata koje vrati Detect() ili GetFormatByExtension() — svaki registrovan format prepisuje ove metode svojom implementacijom. Pozivanje istih na sirovoj osnovnoj klasi FileFormat instanca (nije dobijena putem registra) baca NotImplementedException.

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}");

Vidi takođe

 Српски