FileFormat — Aspose.3D FOSS for Java
Example
FileFormat veikia kaip tiek formato aprašas, tiek visų palaikomų 3D failų formatų registras. Kiekvienas formatas yra atvaizduojamas kaip FileFormat instance, prieinama kaip klasės atributas arba per statines gamyklines metodus. Jūs perduodate FileFormat instancijas į Scene.save() priversti naudoti konkretų formatą, arba naudoti FileFormat.detect() norint nustatyti nežinomo failo formatą.
Example: com.aspose.threed
import com.aspose.threed.FileFormat;Palaikomos formato konstantos
Žemiau pateiktos formato konstantos, kurios yra aktyviai palaikomos (registruoti importuotojai ir/arba eksportuotojai) FOSS leidime.
Aktyviai palaikoma (FOSS leidimas)
| Example | Example | Example |
|---|---|---|
FileFormat.WAVEFRONT_OBJ() | .obj | Statinis metodas, grąžinantis ObjFormat instanciją |
FileFormat.GLTF2() | .gltf / .glb | glTF 2.0 ir GLB; statinis metodas, grąžinantis GltfFormat pavyzdys. Naudokite GltfSaveOptions su setContentType(FileContentType.BINARY) GLB išvedimui. |
FileFormat.FBX7400ASCII() | .fbx | FBX 7.4 ASCII; tik importavimas (nėra eksporto) |
FileFormat.STL_BINARY | .stl | STL binarinis (nustatoma klasės įkrovimo metu) |
FileFormat.STLASCII | .stl | STL ASCII |
Example
FBX versijos 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.
Statiniai metodai
| Example | Grąžinimo tipas | Example |
|---|---|---|
FileFormat.detect(InputStream stream, String fileName) | FileFormat | Nustato formatą iš failo srauto; fileName naudojama kaip patarimas |
FileFormat.getFormatByExtension(String ext) | FileFormat | Grąžina formatą, atitinkantį plėtinio eilutę, pvz. ".obj", ".glb", ".fbx", ".stl" |
Objekto savybės
| Example | Example | Example | Example |
|---|---|---|---|
extension | String | getExtension() | Pagrindinis failo plėtinys (be priekinių taškų) |
extensions | List<String> | getExtensions() | Visų šio formato palaikomų plėtinių sąrašas |
contentType | String | getContentType() | MIME tipo eilutė |
canExport | boolean | getCanExport() | Ar šio formato eksportavimas yra palaikomas |
canImport | boolean | getCanImport() | Ar šio formato importavimas yra palaikomas |
version | String | getVersion() | Formato versijos eilutė |
Objekto metodai
| Example | Grąžinimo tipas | Example |
|---|---|---|
createLoadOptions() | LoadOptions | Sukuria atitinkamą formato specifinį LoadOptions subclass |
createSaveOptions() | SaveOptions | Sukuria atitinkamą formato specifinį SaveOptions subclass |
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());
}
}