FileFormat — Aspose.3D FOSS for .NET
Example
Example FileFormat class は、サポートされているすべての 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() — 各登録された フォーマットは独自の実装でこれらのメソッドをオーバーライドします。これらを raw base-class に対して呼び出すと 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}");