FileFormat — Aspose.3D FOSS for Java
Example
FileFormat λειτουργεί τόσο ως περιγραφέας μορφής όσο και ως μητρώο όλων των υποστηριζόμενων μορφών αρχείων 3D. Κάθε μορφή αναπαρίσταται ως μια FileFormat πρόσθετο προσβάσιμο ως χαρακτηριστικό κλάσης ή μέσω στατικών μεθόδων κατασκευής. Περνάτε FileFormat πρόσθετα σε Scene.save() για να επιβάλετε μια συγκεκριμένη μορφή, ή χρησιμοποιήστε FileFormat.detect() για να εντοπίσετε τη μορφή ενός άγνωστου αρχείου.
Example: com.aspose.threed
import com.aspose.threed.FileFormat;Σταθερές Μορφής Υποστηριζόμενες
Οι σταθερές μορφής που υποστηρίζονται ενεργά (εγγεγραμμένοι εισαγωγείς και/ή εξαγωγείς) στην έκδοση FOSS εμφανίζονται παρακάτω.
Ενεργά Υποστηριζόμενα (έκδοση FOSS)
| Example | Example | Example |
|---|---|---|
FileFormat.WAVEFRONT_OBJ() | .obj | Στατική μέθοδος που επιστρέφει ένα ObjFormat πρόσθετο |
FileFormat.GLTF2() | .gltf / .glb | glTF 2.0 και GLB· στατική μέθοδος που επιστρέφει ένα GltfFormat αντίγραφο. Χρησιμοποιήστε GltfSaveOptions με setContentType(FileContentType.BINARY) για έξοδο GLB. |
FileFormat.FBX7400ASCII() | .fbx | FBX 7.4 ASCII; μόνο εισαγωγή (χωρίς εξαγωγή) |
FileFormat.STL_BINARY | .stl | STL δυαδικό (ορίζεται κατά τη φόρτωση της κλάσης) |
FileFormat.STLASCII | .stl | STL ASCII |
Example
Εκδόσεις FBX 6100-7700 (δυαδικό), Maya ASCII/Δυαδικό, Discreet 3DS, Universal 3D, GLTF 1.0, GLTF δυαδικό, PDF, Blender, DXF, PLY, X (δυαδικό/κείμενο), Draco, RVM, ASE, IFC, Siemens JT, AMF, VRML, HTML5, ZIP, USD/USDA/USDZ, XYZ, PCD, PCD δυαδικό.
Στατικές Μέθοδοι
| Example | Τύπος Επιστροφής | Example |
|---|---|---|
FileFormat.detect(InputStream stream, String fileName) | FileFormat | Ανιχνεύει τη μορφή από ροή αρχείου; fileName χρησιμοποιείται ως υπόδειξη |
FileFormat.getFormatByExtension(String ext) | FileFormat | Επιστρέφει τη μορφή που ταιριάζει με μια συμβολοσειρά επέκτασης όπως ".obj", ".glb", ".fbx", ".stl" |
Ιδιότητες Αντικειμένου
| Example | Example | Example | Example |
|---|---|---|---|
extension | String | getExtension() | Κύρια επέκταση αρχείου (χωρίς την αρχική τελεία) |
extensions | List<String> | getExtensions() | Όλες οι επεκτάσεις που υποστηρίζονται από αυτή τη μορφή |
contentType | String | getContentType() | Συμβολοσειρά τύπου MIME |
canExport | boolean | getCanExport() | Εάν η εξαγωγή σε αυτή τη μορφή υποστηρίζεται |
canImport | boolean | getCanImport() | Εάν η εισαγωγή από αυτή τη μορφή υποστηρίζεται |
version | String | getVersion() | Συμβολοσειρά έκδοσης μορφής |
Μέθοδοι Αντικειμένου
| Example | Τύπος επιστροφής | Example |
|---|---|---|
createLoadOptions() | LoadOptions | Δημιουργεί το κατάλληλο format-specific LoadOptions υποκλάση |
createSaveOptions() | SaveOptions | Δημιουργεί το κατάλληλο format-specific SaveOptions υποκλάση |
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());
}
}