FileFormat — Aspose.3D FOSS for Java
Example
FileFormat tjener både som en formatbeskrivelse og som et register over alle understøttede 3D‑filformater. Hvert format er repræsenteret som en FileFormat instans tilgængelig som en klasseattribut eller via statiske fabriksmetoder. Du videregiver FileFormat instanser til Scene.save() for at tvinge et specifikt format, eller brug FileFormat.detect() for at identificere et ukendt fils format.
Example: com.aspose.threed
import com.aspose.threed.FileFormat;Understøttede formatkonstanter
Formatkonstanter, der aktivt understøttes (importører og/eller eksportører registreret) i FOSS-udgivelsen, vises nedenfor.
Aktivt understøttet (FOSS-udgivelse)
| Example | Example | Example |
|---|---|---|
FileFormat.WAVEFRONT_OBJ() | .obj | Statisk metode, der returnerer en ObjFormat instans |
FileFormat.GLTF2() | .gltf / .glb | glTF 2.0 og GLB; statisk metode, der returnerer en GltfFormat instans. Brug GltfSaveOptions med setContentType(FileContentType.BINARY) til GLB-output. |
FileFormat.FBX7400ASCII() | .fbx | FBX 7.4 ASCII; kun import (ingen eksport) |
FileFormat.STL_BINARY | .stl | STL binary (indstillet ved klasseindlæsning) |
FileFormat.STLASCII | .stl | STL ASCII |
Example
FBX versioner 6100-7700 (binær), Maya ASCII/Binary, Discreet 3DS, Universal 3D, GLTF 1.0, GLTF binary, PDF, Blender, DXF, PLY, X (binær/tekst), Draco, RVM, ASE, IFC, Siemens JT, AMF, VRML, HTML5, ZIP, USD/USDA/USDZ, XYZ, PCD, PCD binær.
Statiske metoder
| Example | Returtype | Example |
|---|---|---|
FileFormat.detect(InputStream stream, String fileName) | FileFormat | Detekterer formatet fra en filstrøm; fileName bruges som et hint |
FileFormat.getFormatByExtension(String ext) | FileFormat | Returnerer formatet, der matcher en filendelsesstreng såsom ".obj", ".glb", ".fbx", ".stl" |
Instans-egenskaber
| Example | Example | Example | Example |
|---|---|---|---|
extension | String | getExtension() | Primær filendelse (uden indledende punktum) |
extensions | List<String> | getExtensions() | Alle filendelser, der understøttes af dette format |
contentType | String | getContentType() | MIME-typestreng |
canExport | boolean | getCanExport() | Om eksport til dette format understøttes |
canImport | boolean | getCanImport() | Om import fra dette format understøttes |
version | String | getVersion() | Formatversionsstreng |
Instansmetoder
| Example | Returtype | Example |
|---|---|---|
createLoadOptions() | LoadOptions | Opretter den passende format-specifikke LoadOptions underklasse |
createSaveOptions() | SaveOptions | Opretter den passende format-specifikke 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());
}
}