FileFormat — Aspose.3D FOSS for .NET
Example
Example FileFormat η κλάση είναι ένα μητρώο όλων των υποστηριζόμενων μορφών αρχείων 3D. Δεν υπάρχουν δημόσιες ονομαστικές σταθερές για μεμονωμένες μορφές — τα στιγμιότυπα μορφής λαμβάνονται κατά το χρόνο εκτέλεσης μέσω των στατικών μεθόδων ανακάλυψης ή του Formats συλλογής.
Κατάλογος Μορφών
Οι υποστηριζόμενες μορφές καταχωρούνται εσωτερικά. Χρησιμοποιήστε το παρακάτω API για πρόσβαση σε αυτές:
| Example | Example | Example |
|---|---|---|
FileFormat.Formats | IList<FileFormat> | Όλα τα καταχωρημένα στιγμιότυπα μορφής |
FileFormat.Detect(string filePath) | FileFormat | Ανιχνεύει τη μορφή από διαδρομή αρχείου (βάσει επέκτασης και περιεχομένου) |
FileFormat.GetFormatByExtension(string ext) | FileFormat | Επιστρέφει τη μορφή για μια δεδομένη επέκταση αρχείου (π.χ. ".obj") |
Οι καταχωρημένες μορφές περιλαμβάνουν: OBJ, STL, glTF/GLB, FBX, COLLADA, PLY και 3MF.
Example
| Example | Τύπος Επιστροφής | Example |
|---|---|---|
Detect(string filePath) | FileFormat | Ανιχνεύει τη μορφή από διαδρομή αρχείου |
GetFormatByExtension(string ext) | FileFormat | Επιστρέφει τη μορφή που ταιριάζει με την επέκταση |
CreateLoadOptions() | LoadOptions | Επιστρέφει επιλογές φόρτωσης κατάλληλες για αυτό το στιγμιότυπο μορφής |
CreateSaveOptions() | SaveOptions | Επιστρέφει επιλογές αποθήκευσης κατάλληλες για αυτό το στιγμιότυπο μορφής |
Σημείωση για CreateLoadOptions() / CreateSaveOptions(): Αυτές οι μέθοδοι λειτουργούν σωστά όταν κλήθηκαν σε στιγμιότυπα μορφής που επιστράφηκαν από Detect() ή GetFormatByExtension() — κάθε καταχωρημένο μορφή παρακάμπτει αυτές τις μεθόδους με τη δική της υλοποίηση. Η κλήση τους σε μια ακατέργαστη βασική κλάση FileFormat αντίγραφο (που δεν αποκτήθηκε μέσω του μητρώου) ρίχνει 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}");