Explore nuestros productos

Aspose.3D para Node.js vía Java 24.3 Notas de la versión

Mejoras y Cambios

KeySummaryCategory
THREEDNET-1514Escribir más ejemplos de código para cubrir más métodos y tipos.Tarea
THREEDNET-1523Optimizar la malla causa distorsiónTarea
THREEDNET-1516Modelo generado por SweptAreaSolid no debe ser planoCorrección de errores
THREEDNET-1517El mapa metálico y el mapa de rugosidad no están presentes cuando convierto fbx a glbCorrección de errores

Cambios en la API

Se agregaron miembros a la clase com.aspose.threed.Mesh:

    /**
     *  Optimiza el uso de memoria de la malla eliminando puntos de control duplicados
     *
     * @param vertexElements Optimiza los datos de elementos de vértice duplicados
     * @param toleranceControlPoint La tolerancia para el punto de control, el valor predeterminado es 1e-9
     * @param toleranceNormal La tolerancia para la normal/tangente/binormal predeterminada es 1e-9
     * @param toleranceUV La tolerancia para la uv, el valor predeterminado es 1e-9
     * @return Nueva instancia de malla con uso compacto de memoria
     */
    public Mesh optimize(boolean vertexElements, float toleranceControlPoint, float toleranceNormal, float toleranceUV)

El nuevo método le permite controlar la tolerancia para el punto de control, la normal y la UV.

Se agregaron miembros a la clase com.aspose.threed.FbxLoadOptions:

    /**
     *  Obtiene si se debe habilitar el modo compatible.
     *  El modo compatible intentará admitir definiciones FBX no estándar como materiales PBR exportados por Blender.
     *  El valor predeterminado es falso.
     *
     */
    public boolean getCompatibleMode()
    
    /**
     *  Establece si se debe habilitar el modo compatible.
     *  El modo compatible intentará admitir definiciones FBX no estándar como materiales PBR exportados por Blender.
     *  El valor predeterminado es falso.
     *
     * @param value Nuevo valor
     */
    public void setCompatibleMode(boolean value)

FBX no admite materiales PBR, diferentes exportadores utilizan diferentes definiciones para almacenar los parámetros del material PBR, este parámetro le permite reconstruir el material PBR tanto como sea posible.

Se agregaron miembros a la clase com.aspose.threed.FileSystem:

    /**
     *  Inicializa un nuevo {@link com.aspose.threed.FileSystem} que solo accede al directorio local.
     *  Todas las operaciones de lectura/escritura en esta instancia de FileSystem se mapearán al directorio especificado.
     *
     * @param directory El directorio en su sistema de archivos físico como directorio raíz virtual.
     *
     */
    public static FileSystem createLocalFileSystem(String directory)
    /**
     *  Crea un sistema de archivos basado en memoria que mapeará las operaciones de lectura/escritura a la memoria.
     *
     */
    public static FileSystem createMemoryFileSystem(Map<String, MemoryStream> files)
    public static FileSystem createMemoryFileSystem()

    /**
     *  Crea un sistema de archivos falso, las operaciones de lectura/escritura son operaciones falsas.
     */
    public static FileSystem createDummyFileSystem()

    /**
     *  Crea un sistema de archivos para proporcionar acceso de solo lectura a un archivo zip o flujo zip especificado.
     *  El sistema de archivos se eliminará después de la operación de abrir/guardar.
     *
     */
    public static FileSystem createZipFileSystem(Stream stream, String baseDir)

    public static FileSystem createZipFileSystem(Stream stream)
    /**
     *  Sistema de archivos para proporcionar acceso de solo lectura a un archivo zip o flujo zip especificado.
     *  El sistema de archivos se eliminará después de la operación de abrir/guardar.
     *
     */
    public static FileSystem createZipFileSystem(String fileName)
        throws IOException

Estos métodos proporcionan formas rápidas de crear FileSystems integrados para usted.

Código de ejemplo:

     var inputFile = "input.fbx";
     var format = FileFormat.detect(inputFile);
     //crea una instancia de opciones de carga y especifica un sistema de archivos local
     var opt = format.createLoadOptions();
     opt.setFileSystem(FileSystem.createLocalFileSystem("textures/"));
     //carga el archivo
     var scene = Scene.fromFile(inputFile, opt);


 
 Español