FileFormat — Aspose.3D FOSS for Java
Example
FileFormat servește atât ca descriptor de format, cât și ca registru al tuturor formatelor de fișiere 3D acceptate. Fiecare format este reprezentat ca un FileFormat instanță accesibilă ca atribut de clasă sau prin metode statice de fabrică. Transmiți FileFormat instanțe către Scene.save() pentru a forța un format specific, sau folosește FileFormat.detect() pentru a identifica formatul unui fișier necunoscut.
Example: com.aspose.threed
import com.aspose.threed.FileFormat;Constante de format acceptate
Constantele de format care sunt susținute activ (importatori și/sau exportatori înregistrați) în versiunea FOSS sunt afișate mai jos.
Suportat activ (versiune FOSS)
| Example | Example | Example |
|---|---|---|
FileFormat.WAVEFRONT_OBJ() | .obj | Metodă statică care returnează un ObjFormat instanță |
FileFormat.GLTF2() | .gltf / .glb | glTF 2.0 și GLB; metodă statică care returnează un GltfFormat instanță. Utilizați GltfSaveOptions cu setContentType(FileContentType.BINARY) pentru ieșire GLB. |
FileFormat.FBX7400ASCII() | .fbx | FBX 7.4 ASCII; doar import (fără export) |
FileFormat.STL_BINARY | .stl | STL binar (setat la încărcarea clasei) |
FileFormat.STLASCII | .stl | STL ASCII |
Example
Versiuni FBX 6100-7700 (binare), Maya ASCII/Binar, Discreet 3DS, Universal 3D, GLTF 1.0, GLTF binar, PDF, Blender, DXF, PLY, X (binar/text), Draco, RVM, ASE, IFC, Siemens JT, AMF, VRML, HTML5, ZIP, USD/USDA/USDZ, XYZ, PCD, PCD binar.
Metode statice
| Example | Tip de returnare | Example |
|---|---|---|
FileFormat.detect(InputStream stream, String fileName) | FileFormat | Detectează formatul dintr-un flux de fișier; fileName este folosit ca indiciu |
FileFormat.getFormatByExtension(String ext) | FileFormat | Returnează formatul care corespunde unui șir de extensie, cum ar fi ".obj", ".glb", ".fbx", ".stl" |
Proprietăți ale instanței
| Example | Example | Example | Example |
|---|---|---|---|
extension | String | getExtension() | Extensia principală a fișierului (fără punctul inițial) |
extensions | List<String> | getExtensions() | Toate extensiile suportate de acest format |
contentType | String | getContentType() | Șir de tip MIME |
canExport | boolean | getCanExport() | Dacă exportarea în acest format este acceptată |
canImport | boolean | getCanImport() | Dacă importarea din acest format este acceptată |
version | String | getVersion() | Șir de versiune al formatului |
Metode ale instanței
| Example | Tip de returnare | Example |
|---|---|---|
createLoadOptions() | LoadOptions | Creează formatul specific adecvat LoadOptions subclasă |
createSaveOptions() | SaveOptions | Creează formatul specific adecvat SaveOptions subclasă |
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());
}
}