FileFormat — Aspose.3D FOSS for Java

Example

FileFormat servește atât ca descriptor de format, cât și ca registru al tuturor formatelor de fișiere 3D acceptate. Fiecare format este reprezentat ca un FileFormat instanță accesibilă ca atribut de clasă sau prin metode statice de fabrică. Transmiți FileFormat instanțe către Scene.save() pentru a forța un format specific, sau folosește FileFormat.detect() pentru a identifica formatul unui fișier necunoscut.

Example: com.aspose.threed

import com.aspose.threed.FileFormat;

Constante de format acceptate

Constantele de format care sunt susținute activ (importatori și/sau exportatori înregistrați) în versiunea FOSS sunt afișate mai jos.

Suportat activ (versiune FOSS)

ExampleExampleExample
FileFormat.WAVEFRONT_OBJ().objMetodă statică care returnează un ObjFormat instanță
FileFormat.GLTF2().gltf / .glbglTF 2.0 și GLB; metodă statică care returnează un GltfFormat instanță. Utilizați GltfSaveOptions cu setContentType(FileContentType.BINARY) pentru ieșire GLB.
FileFormat.FBX7400ASCII().fbxFBX 7.4 ASCII; doar import (fără export)
FileFormat.STL_BINARY.stlSTL binar (setat la încărcarea clasei)
FileFormat.STLASCII.stlSTL ASCII

Example

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

Metode statice

ExampleTip de returnareExample
FileFormat.detect(InputStream stream, String fileName)FileFormatDetectează formatul dintr-un flux de fișier; fileName este folosit ca indiciu
FileFormat.getFormatByExtension(String ext)FileFormatReturnează formatul care corespunde unui șir de extensie, cum ar fi ".obj", ".glb", ".fbx", ".stl"

Proprietăți ale instanței

ExampleExampleExampleExample
extensionStringgetExtension()Extensia principală a fișierului (fără punctul inițial)
extensionsList<String>getExtensions()Toate extensiile suportate de acest format
contentTypeStringgetContentType()Șir de tip MIME
canExportbooleangetCanExport()Dacă exportarea în acest format este acceptată
canImportbooleangetCanImport()Dacă importarea din acest format este acceptată
versionStringgetVersion()Șir de versiune al formatului

Metode ale instanței

ExampleTip de returnareExample
createLoadOptions()LoadOptionsCreează formatul specific adecvat LoadOptions subclasă
createSaveOptions()SaveOptionsCreează formatul specific adecvat SaveOptions subclasă

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

Vezi și

 Română