FileFormat — Aspose.3D FOSS for Java
Example
FileFormat به عنوان توصیفگر فرمت و همچنین رجیستری از تمام فرمتهای فایل 3D پشتیبانیشده عمل میکند. هر فرمت بهعنوان یک FileFormat نمونهای که بهعنوان ویژگی کلاس یا از طریق متدهای استاتیک کارخانهای قابل دسترسی است. شما پاس میدهید FileFormat نمونهها را به Scene.save() برای اعمال یک فرمت خاص، یا از FileFormat.detect() برای شناسایی فرمت یک فایل ناشناخته استفاده کنید.
Example: com.aspose.threed
import com.aspose.threed.FileFormat;ثابتهای فرمت پشتیبانیشده
ثابتهای فرمت که بهطور فعال در نسخهٔ متنباز (FOSS) پشتیبانی میشوند (واردکنندهها و/یا صادرکنندهها ثبت شدهاند) در زیر نشان داده شدهاند.
پشتیبانیشده بهصورت فعال (نسخهٔ متنباز)
| Example | Example | Example |
|---|---|---|
FileFormat.WAVEFRONT_OBJ() | .obj | متد استاتیک که یک ObjFormat نمونه را برمیگرداند |
FileFormat.GLTF2() | .gltf / .glb | glTF 2.0 و GLB؛ متد استاتیک که یک GltfFormat نمونه. استفاده کنید GltfSaveOptions با setContentType(FileContentType.BINARY) برای خروجی GLB. |
FileFormat.FBX7400ASCII() | .fbx | FBX 7.4 ASCII؛ فقط وارد کردن (بدون خروجی) |
FileFormat.STL_BINARY | .stl | STL باینری (در زمان بارگذاری کلاس تنظیم میشود) |
FileFormat.STLASCII | .stl | STL ASCII |
Example
نسخههای FBX 6100-7700 (باینری)، Maya ASCII/باینری، Discreet 3DS، Universal 3D، GLTF 1.0، GLTF باینری، PDF، Blender، DXF، PLY، X (باینری/متن)، Draco، RVM، ASE، IFC، Siemens JT، AMF، VRML، HTML5، ZIP، USD/USDA/USDZ، XYZ، PCD، PCD باینری.
متدهای ایستا
| Example | نوع بازگشت | Example |
|---|---|---|
FileFormat.detect(InputStream stream, String fileName) | FileFormat | قالب را از یک جریان فایل تشخیص میدهد؛; fileName به عنوان یک راهنمایی استفاده میشود |
FileFormat.getFormatByExtension(String ext) | FileFormat | قالبی را برمیگرداند که با رشته پسوندی مانند ".obj", ".glb", ".fbx", ".stl" |
ویژگیهای نمونه
| Example | Example | Example | Example |
|---|---|---|---|
extension | String | getExtension() | پسوند اصلی فایل (بدون نقطهٔ پیشرو) |
extensions | List<String> | getExtensions() | تمام پسوندهای پشتیبانیشده توسط این فرمت |
contentType | String | getContentType() | رشتهٔ نوع MIME |
canExport | boolean | getCanExport() | آیا صادرات به این فرمت پشتیبانی میشود |
canImport | boolean | getCanImport() | آیا وارد کردن از این فرمت پشتیبانی میشود |
version | String | getVersion() | رشته نسخه فرمت |
متدهای نمونه
| Example | نوع بازگشت | Example |
|---|---|---|
createLoadOptions() | LoadOptions | مورد مناسب مخصوص فرمت را ایجاد میکند LoadOptions زیرکلاس |
createSaveOptions() | SaveOptions | مورد مناسب مخصوص فرمت را ایجاد میکند SaveOptions زیرکلاس |
Example
import com.aspose.threed.Scene;
import com.aspose.threed.FileFormat;
import com.aspose.threed.*;
// Auto-detect and load
Scene scene = Scene.fromFile("model.obj");
// Save with explicit format (force GLB binary)
GltfSaveOptions opts = new GltfSaveOptions();
opts.setContentType(FileContentType.BINARY);
scene.save("output.glb", opts);
// Get format by extension
FileFormat fmt = FileFormat.getFormatByExtension(".fbx");
if (fmt != null) {
System.out.println(fmt.getCanImport()); // true
System.out.println(fmt.getCanExport()); // false (FBX export not available)
}
// Create options from a format instance
FileFormat fmtObj = FileFormat.getFormatByExtension(".obj");
LoadOptions loadOpts = fmtObj.createLoadOptions(); // ObjLoadOptions
SaveOptions saveOpts = fmtObj.createSaveOptions(); // ObjSaveOptions
// Detect format from file stream
try (FileInputStream fis = new FileInputStream("unknown_file.bin")) {
FileFormat detected = FileFormat.detect(fis, "unknown_file.bin");
if (detected != null) {
System.out.println(detected.getClass().getSimpleName());
}
}