FileFormat — Aspose.3D FOSS for .NET

Example

Example FileFormat lớp là một kho đăng ký của tất cả các định dạng tệp 3D được hỗ trợ. Không có hằng số công khai có tên cho từng định dạng — các thể hiện định dạng được lấy tại thời gian chạy thông qua các phương thức khám phá tĩnh hoặc Formats bộ sưu tập.

Danh bạ Định dạng

Các định dạng được hỗ trợ được đăng ký nội bộ. Sử dụng API sau để truy cập chúng:

ExampleExampleExample
FileFormat.FormatsIList<FileFormat>Tất cả các thể hiện định dạng đã đăng ký
FileFormat.Detect(string filePath)FileFormatPhát hiện định dạng từ đường dẫn tệp (dựa trên phần mở rộng và nội dung)
FileFormat.GetFormatByExtension(string ext)FileFormatTrả về định dạng cho một phần mở rộng tệp nhất định (ví dụ:. ".obj")

Các định dạng đã đăng ký bao gồm: OBJ, STL, glTF/GLB, FBX, COLLADA, PLY và 3MF.

Example

ExampleKiểu trả vềExample
Detect(string filePath)FileFormatPhát hiện định dạng từ một đường dẫn tệp
GetFormatByExtension(string ext)FileFormatTrả về định dạng phù hợp với phần mở rộng
CreateLoadOptions()LoadOptionsTrả về các tùy chọn tải phù hợp cho thể hiện định dạng này
CreateSaveOptions()SaveOptionsTrả về các tùy chọn lưu phù hợp cho thể hiện định dạng này

Lưu ý về CreateLoadOptions() / CreateSaveOptions(): Các phương thức này hoạt động chính xác khi được gọi trên các thể hiện định dạng được trả về bởi Detect() hoặc GetFormatByExtension() — mỗi định dạng đã đăng ký định dạng sẽ ghi đè các phương thức này bằng triển khai riêng của nó. Gọi chúng trên một lớp cơ sở thô FileFormat đối tượng (không được lấy qua registry) ném 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}");

Xem Thêm

 Tiếng Việt