FileFormat — Aspose.3D FOSS for Java
Example
FileFormat ทำหน้าที่เป็นทั้งตัวบรรยายรูปแบบและทะเบียนของรูปแบบไฟล์ 3D ที่รองรับทั้งหมด แต่ละรูปแบบจะถูกแทนเป็น a FileFormat อินสแตนซ์ที่เข้าถึงได้เป็นแอตทริบิวต์ของคลาสหรือผ่านเมธอดแฟกทอรีแบบสเตติก คุณส่ง FileFormat อินสแตนซ์ไปยัง Scene.save() เพื่อบังคับรูปแบบเฉพาะ หรือใช้ FileFormat.detect() เพื่อระบุรูปแบบของไฟล์ที่ไม่ทราบ.
Example: com.aspose.threed
import com.aspose.threed.FileFormat;ค่าคงที่รูปแบบที่รองรับ
ค่าคงที่รูปแบบที่ได้รับการสนับสนุนอย่างเต็มที่ (ผู้นำเข้าและ/หรือผู้ส่งออกที่ลงทะเบียน) ในรุ่น FOSS แสดงด้านล่างนี้.
สนับสนุนอย่างเต็มที่ (รุ่น FOSS)
| Example | Example | Example |
|---|---|---|
FileFormat.WAVEFRONT_OBJ() | .obj | เมธอดสเตติกที่คืนค่าเป็น an ObjFormat อินสแตนซ์ |
FileFormat.GLTF2() | .gltf / .glb | glTF 2.0 และ GLB; เมธอดสเตติกที่คืนค่าเป็น a GltfFormat อินสแตนซ์. ใช้ GltfSaveOptions กับ setContentType(FileContentType.BINARY) สำหรับการส่งออก GLB. |
FileFormat.FBX7400ASCII() | .fbx | FBX 7.4 ASCII; นำเข้าเท่านั้น (ไม่มีการส่งออก) |
FileFormat.STL_BINARY | .stl | STL binary (ตั้งค่าที่การโหลดคลาส) |
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());
}
}