FileFormat — Aspose.3D FOSS for Java

Methods

FileFormat служить як описувач формату, так і реєстром усіх підтримуваних 3D файлових форматів. Кожен формат представлений як FileFormat екземпляр, доступний як атрибут класу або через статичні фабричні методи. Ви передаєте FileFormat екземпляри до Scene.save() щоб примусово задати конкретний формат, або використовуйте FileFormat.detect() для визначення формату невідомого файлу.

Methods: com.aspose.threed

import com.aspose.threed.FileFormat;

Підтримувані константи форматів

Константи форматів, які активно підтримуються (зареєстровані імпортери та/або експортери) у випуску FOSS, наведені нижче.

Активно підтримувані (випуск FOSS)

MethodsMethodsMethods
FileFormat.WAVEFRONTOBJ.objПублічне static final поле (екземпляр ObjFormat)
FileFormat.GLTF2.gltf / .glbglTF 2.0 і GLB; публічне static final поле (екземпляр GltfFormat). Використовуйте GltfSaveOptions з setContentType(FileContentType.BINARY) для виводу GLB.
FileFormat.FBX7400ASCII.fbxFBX 7.4 ASCII; лише імпорт (без експорту)
FileFormat.STL_BINARY.stlSTL binary (встановлюється під час завантаження класу)
FileFormat.STLASCII.stlSTL ASCII

Methods

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 бінарний.

Статичні методи

MethodsТип поверненняMethods
FileFormat.detect(InputStream stream, String fileName)FileFormatВизначає формат з файлового потоку; fileName використовується як підказка
FileFormat.getFormatByExtension(String ext)FileFormatПовертає формат, що відповідає рядку розширення, наприклад ".obj", ".glb", ".fbx", ".stl"

Властивості екземпляра

MethodsMethodsMethodsMethods
extensionStringgetExtension()Основне розширення файлу (без початкової крапки)
extensionsList<String>getExtensions()Усі розширення, підтримувані цим форматом
contentTypeStringgetContentType()Рядок типу MIME
canExportbooleangetCanExport()Чи підтримується експорт у цей формат
canImportbooleangetCanImport()Чи підтримується імпорт з цього формату
versionStringgetVersion()Рядок версії формату

Методи екземпляра

MethodsТип поверненняMethods
createLoadOptions()LoadOptionsСтворює відповідний специфічний для формату LoadOptions підклас
createSaveOptions()SaveOptionsСтворює відповідний формат-специфічний SaveOptions підклас

Methods

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

Див. також

 Українська