FileFormat — Aspose.3D FOSS for .NET

Example

Example FileFormat clasa este un registru al tuturor formatelor 3D suportate. Nu există constante publice denumite pentru formatele individuale — instanțele de format sunt obținute la rulare prin metodele statice de descoperire sau prin Formats colecție.

Registru de Formate

Formatele acceptate sunt înregistrate intern. Folosiți API-ul următor pentru a le accesa:

ExampleExampleExample
FileFormat.FormatsIList<FileFormat>Toate instanțele de format înregistrate
FileFormat.Detect(string filePath)FileFormatDetectează formatul dintr-o cale de fișier (după extensie și conținut)
FileFormat.GetFormatByExtension(string ext)FileFormatReturnează formatul pentru o extensie de fișier dată (de ex. ".obj")

Formatele înregistrate includ: OBJ, STL, glTF/GLB, FBX, COLLADA, PLY și 3MF.

Example

ExampleTip de returnareExample
Detect(string filePath)FileFormatDetectează formatul dintr-o cale de fișier
GetFormatByExtension(string ext)FileFormatReturnează formatul care corespunde extensiei
CreateLoadOptions()LoadOptionsReturnează opțiunile de încărcare adecvate pentru această instanță de format
CreateSaveOptions()SaveOptionsReturnează opțiunile de salvare adecvate pentru această instanță de format

Notă privind CreateLoadOptions() / CreateSaveOptions(): Aceste metode funcționează corect când aplicate pe instanțe de format returnate de Detect() sau GetFormatByExtension() — fiecare înregistrat format suprascrie aceste metode cu propria implementare. Apelarea lor pe o clasă de bază brută FileFormat instanță (neobținută prin registru) aruncă 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}");

Vezi și

 Română