FileFormat — Aspose.3D FOSS for .NET

Methods

Methods FileFormat class 是所有受支持的 3D 文件格式的注册表。对于各个格式没有公共的具名常量——格式实例在运行时通过静态发现方法或 Formats 集合。.

格式注册表

受支持的格式在内部已注册。使用以下 API 访问它们::

MethodsMethodsMethods
FileFormat.FormatsIList<FileFormat>所有已注册的格式实例
FileFormat.Detect(string filePath)FileFormat从文件路径检测格式(通过扩展名和内容)
FileFormat.GetFormatByExtension(string ext)FileFormat返回给定文件扩展名的格式(例如. ".obj")

已注册的格式包括:OBJ、STL、glTF/GLB、FBX、COLLADA、PLY 和 3MF。.

Methods

Methods返回类型Methods
Detect(string filePath)FileFormat从文件路径检测格式
GetFormatByExtension(string ext)FileFormat返回与扩展名匹配的格式
CreateLoadOptions()LoadOptions返回适用于此格式实例的加载选项
CreateSaveOptions()SaveOptions返回适用于此格式实例的保存选项

关于 CreateLoadOptions() / CreateSaveOptions(): 这些方法在…时能够正常工作 在由…返回的格式实例上调用 Detect()GetFormatByExtension() — 每个已注册的 格式使用其自身实现覆盖这些方法。在原始基类上调用它们 FileFormat 实例(未通过注册表获取)抛出 NotImplementedException.

Methods

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

另请参阅

 中文