FileFormat — Aspose.3D FOSS for Java

Example

FileFormat sert à la fois de descripteur de format et de registre de tous les formats de fichiers 3D pris en charge. Chaque format est représenté comme un FileFormat instance accessible en tant qu’attribut de classe ou via static factory methods. Vous passez FileFormat instances à Scene.save() pour forcer un format spécifique, ou utiliser FileFormat.detect() pour identifier le format d’un fichier inconnu.

Example: com.aspose.threed

import com.aspose.threed.FileFormat;

Constantes de format prises en charge

Les constantes de format qui sont activement prises en charge (importateurs et/ou exportateurs enregistrés) dans la version FOSS sont présentées ci‑dessous.

Pris en charge activement (version FOSS)

ExampleExampleExample
FileFormat.WAVEFRONT_OBJ().objMéthode statique renvoyant un ObjFormat instance
FileFormat.GLTF2().gltf / .glbglTF 2.0 et GLB ; méthode statique renvoyant un GltfFormat instance. Utilisez GltfSaveOptions avec setContentType(FileContentType.BINARY) pour la sortie GLB.
FileFormat.FBX7400ASCII().fbxFBX 7.4 ASCII ; import uniquement (pas d’export)
FileFormat.STL_BINARY.stlSTL binaire (défini lors du chargement de la classe)
FileFormat.STLASCII.stlSTL ASCII

Example

versions FBX 6100-7700 (binaire), Maya ASCII/Binaire, Discreet 3DS, Universal 3D, GLTF 1.0, GLTF binaire, PDF, Blender, DXF, PLY, X (binaire/texte), Draco, RVM, ASE, IFC, Siemens JT, AMF, VRML, HTML5, ZIP, USD/USDA/USDZ, XYZ, PCD, PCD binaire.

Méthodes statiques

ExampleType de retourExample
FileFormat.detect(InputStream stream, String fileName)FileFormatDétecte le format à partir d’un flux de fichier ; fileName est utilisé comme indice
FileFormat.getFormatByExtension(String ext)FileFormatRenvoie le format correspondant à une chaîne d’extension telle que ".obj", ".glb", ".fbx", ".stl"

Propriétés d’instance

ExampleExampleExampleExample
extensionStringgetExtension()Extension de fichier principale (sans le point initial)
extensionsList<String>getExtensions()Toutes les extensions prises en charge par ce format
contentTypeStringgetContentType()Chaîne de type MIME
canExportbooleangetCanExport()Indique si l’exportation vers ce format est prise en charge
canImportbooleangetCanImport()Indique si l’importation depuis ce format est prise en charge
versionStringgetVersion()Chaîne de version du format

Méthodes d’instance

ExampleType de retourExample
createLoadOptions()LoadOptionsCrée le format spécifique approprié LoadOptions sous‑classe
createSaveOptions()SaveOptionsCrée le format spécifique approprié SaveOptions sous‑classe

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());
    }
}

Voir aussi

 Français