FileFormat — Aspose.3D FOSS for Java
Example
FileFormat tjener både som en formatbeskrivelse og et register over alle støttede 3D‑filformater. Hvert format er representert som en FileFormat instans tilgjengelig som et klasseattributt eller via statiske fabrikkmetoder. Du sender FileFormat instanser til Scene.save() for å tvinge et spesifikt format, eller bruke FileFormat.detect() for å identifisere formatet til en ukjent fil.
Example: com.aspose.threed
import com.aspose.threed.FileFormat;Støttede formatkonstanter
Formatkonstanter som er aktivt støttet (importører og/eller eksportører registrert) i FOSS‑utgivelsen vises nedenfor.
Aktivt støttet (FOSS‑utgivelse)
| Example | Example | Example |
|---|---|---|
FileFormat.WAVEFRONT_OBJ() | .obj | Statisk metode som returnerer en ObjFormat instans |
FileFormat.GLTF2() | .gltf / .glb | glTF 2.0 og GLB; statisk metode som returnerer en GltfFormat instans. Bruk GltfSaveOptions med setContentType(FileContentType.BINARY) for GLB-utdata. |
FileFormat.FBX7400ASCII() | .fbx | FBX 7.4 ASCII; kun import (ingen eksport) |
FileFormat.STL_BINARY | .stl | STL binær (sett ved klasselasting) |
FileFormat.STLASCII | .stl | STL ASCII |
Example
FBX versions 6100-7700 (binary), Maya ASCII/Binary, Discreet 3DS, Universal 3D, GLTF 1.0, GLTF binary, PDF, Blender, DXF, PLY, X (binary/text), Draco, RVM, ASE, IFC, Siemens JT, AMF, VRML, HTML5, ZIP, USD/USDA/USDZ, XYZ, PCD, PCD binary.
Statiske metoder
| Example | Returtype | Example |
|---|---|---|
FileFormat.detect(InputStream stream, String fileName) | FileFormat | Oppdager formatet fra en filstrøm; fileName brukes som et hint |
FileFormat.getFormatByExtension(String ext) | FileFormat | Returnerer formatet som matcher en filendelse‑streng, for eksempel ".obj", ".glb", ".fbx", ".stl" |
Instans‑egenskaper
| Example | Example | Example | Example |
|---|---|---|---|
extension | String | getExtension() | Primær filendelse (uten innledende punktum) |
extensions | List<String> | getExtensions() | Alle filendelser som støttes av dette formatet |
contentType | String | getContentType() | MIME-type streng |
canExport | boolean | getCanExport() | Om eksport til dette formatet støttes |
canImport | boolean | getCanImport() | Om import fra dette formatet støttes |
version | String | getVersion() | Formatversjonsstreng |
Instans‑metoder
| Example | Returtype | Example |
|---|---|---|
createLoadOptions() | LoadOptions | Oppretter den passende formatspesifikke LoadOptions underklasse |
createSaveOptions() | SaveOptions | Oppretter den passende formatspesifikke SaveOptions underklasse |
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());
}
}