FileFormat — Aspose.3D FOSS for Java
Example
FileFormat dient zowel als een formatbeschrijving als een register van alle ondersteunde 3D‑bestandsformaten. Elk format wordt weergegeven als een FileFormat instantie toegankelijk als een klasse‑attribuut of via statische fabrieksmethoden. Je geeft FileFormat instanties aan Scene.save() om een specifiek formaat af te dwingen, of gebruik FileFormat.detect() om het formaat van een onbekend bestand te identificeren.
Example: com.aspose.threed
import com.aspose.threed.FileFormat;Ondersteunde formatconstanten
Formatconstanten die actief worden ondersteund (importeurs en/of exporteurs geregistreerd) in de FOSS-release worden hieronder weergegeven.
Actief ondersteund (FOSS-release)
| Example | Example | Example |
|---|---|---|
FileFormat.WAVEFRONT_OBJ() | .obj | Statische methode die een ObjFormat instantie |
FileFormat.GLTF2() | .gltf / .glb | glTF 2.0 en GLB; statische methode die een GltfFormat instance. Gebruik GltfSaveOptions met setContentType(FileContentType.BINARY) voor GLB-uitvoer. |
FileFormat.FBX7400ASCII() | .fbx | FBX 7.4 ASCII; alleen importeren (geen export) |
FileFormat.STL_BINARY | .stl | STL binair (ingesteld bij het laden van de klasse) |
FileFormat.STLASCII | .stl | STL ASCII |
Example
FBX-versies 6100-7700 (binair), Maya ASCII/Binary, Discreet 3DS, Universal 3D, GLTF 1.0, GLTF binary, PDF, Blender, DXF, PLY, X (binair/tekst), Draco, RVM, ASE, IFC, Siemens JT, AMF, VRML, HTML5, ZIP, USD/USDA/USDZ, XYZ, PCD, PCD binary.
Statische methoden
| Example | Retourtype | Example |
|---|---|---|
FileFormat.detect(InputStream stream, String fileName) | FileFormat | Detecteert het formaat vanuit een bestandsstroom; fileName wordt gebruikt als hint |
FileFormat.getFormatByExtension(String ext) | FileFormat | Retourneert het formaat dat overeenkomt met een extensiestring zoals ".obj", ".glb", ".fbx", ".stl" |
Instantie-eigenschappen
| Example | Example | Example | Example |
|---|---|---|---|
extension | String | getExtension() | Primaire bestandsextensie (zonder voorafgaande punt) |
extensions | List<String> | getExtensions() | Alle extensies die door dit formaat worden ondersteund |
contentType | String | getContentType() | MIME-type string |
canExport | boolean | getCanExport() | Of het exporteren naar dit formaat wordt ondersteund |
canImport | boolean | getCanImport() | Of het importeren vanuit dit formaat wordt ondersteund |
version | String | getVersion() | Formaatversiestring |
Instantie-methoden
| Example | Retourtype | Example |
|---|---|---|
createLoadOptions() | LoadOptions | Maakt de juiste formaat‑specifieke LoadOptions subklasse |
createSaveOptions() | SaveOptions | Maakt de juiste formaat‑specifieke SaveOptions subklasse |
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());
}
}