Navegue pelos nossos produtos

Aspose.3D para Java 24.8 - Notas da Versão

Melhorias e Alterações

KeySummaryCategory
THREEDNET-1576Expor utilitários do sistema de eixos interno para o usuário.Tarefa
THREEDNET-1579Implementar suporte completo XZ de fluxoTarefa
THREEDNET-1578Metadados de versão JT 9.5Melhoria
THREEDNET-1580Adicionar suporte PMI para formato JT 9Melhoria
THREEDNET-1575Rotação do Modelo GLB ConvertidaCorreção de bug
THREEDNET-1577Erro “não é possível abrir este arquivo” para arquivo 3mfCorreção de bug

Alterações na API

Classe com.aspose.threed.JtLoadOptions adicionada

    /**
     *  Carregar propriedades da tabela de propriedades de JT como propriedades Aspose.3D.
     *  Valor padrão é falso.
     *
     * @return  Carregar propriedades da tabela de propriedades de JT como propriedades Aspose.3D. 
     * Valor padrão é falso.
     */
    public boolean getLoadProperties()
    
    /**
     *  Carregar propriedades da tabela de propriedades de JT como propriedades Aspose.3D.
     *  Valor padrão é falso.
     *
     * @param value Novo valor
     */
    public void setLoadProperties(boolean value)
    
    /**
     *  Carregar informações de PMI de um arquivo JT, se possível, os dados serão salvos como propriedade "PMI" de {@link com.aspose.threed.Scene#getAssetInfo}.
     *  Valor padrão é falso.
     *
     * @return  Carregar informações de PMI de um arquivo JT, se possível, os dados serão salvos como propriedade "PMI" de {@link com.aspose.threed.Scene#getAssetInfo}.
     * Valor padrão é falso.
     */
    public boolean getLoadPMI()
    
    /**
     *  Carregar informações de PMI de um arquivo JT, se possível, os dados serão salvos como propriedade "PMI" de {@link com.aspose.threed.Scene#getAssetInfo}.
     *  Valor padrão é falso.
     *
     * @param value Novo valor
     */
    public void setLoadPMI(boolean value)
        

O novo JtLoadOptions adicionado permite que você instrua o Aspose.3D a analisar os metadados do arquivo JT e salvá-los como propriedades Aspose.3D padrão.

Código de exemplo

    var opt = new JtLoadOptions();
    opt.setLoadProperties(true);
    var s = Scene.fromFile("test.jt", opt);
    
    for(var prop : s.getRootNode().getChildNodes().get(0).getProperties())
    {
        System.out.println(prop.getName() + " = " + prop.getValue());
    }

Membros adicionados à classe com.aspose.threed.AxisSystem:

    /**
     *  Criar uma matriz usada para converter do sistema de eixos atual para o sistema de eixos de destino.
     *
     * @param targetSystem Sistema de eixos de destino
     * @return Uma nova matriz de transformação para fazer a conversão do eixo
     */
    public Matrix4 transformTo(AxisSystem targetSystem)


    /**
     *  Criar {@link com.aspose.threed.AxisSystem} de {@link com.aspose.threed.AssetInfo}
     *
     * @param assetInfo De qual informação de ativo ler sistema de coordenadas, vetor para cima e frontal.
     * @return Sistema de eixos contendo sistema de coordenadas, para cima, frontal da informação de ativo fornecida
     */
    public static AxisSystem fromAssetInfo(AssetInfo assetInfo)

Código de exemplo

O novo método adicionado permite que você crie uma matriz de transformação para converter o vetor de um sistema de eixos para outro sistema de eixos.

    Scene scene = Scene.fromFile("test.fbx");
    //Criar um novo sistema de eixos com vetor para cima para o eixo +Y e frontal para o eixo +X.
    var target = new AxisSystem(CoordinateSystem.LEFT_HANDED, Axis.Y_AXIS, Axis.X_AXIS);
    //Criar uma matriz de transformação do sistema de eixos atual da cena para nosso sistema de eixos personalizado
    var transform = AxisSystem.fromAssetInfo(scene.getAssetInfo()).transformTo(target);
    //Aplicar a transformação a todas as geometrias na cena.
    PolygonModifier.applyTransform(scene.getRootNode(), transform);

Membros adicionados à classe com.aspose.threed.PolygonModifier:

    /**
     *  Aplicar matriz de transformação nos pontos de controle de todas as geometrias
     *
     * @param node 
     * @param transform 
     */
    public static void applyTransform(Node node, Matrix4 transform)

Este novo método permite que você aplique uma matriz a todos os pontos de controle de todas as geometrias descendentes.

Código de exemplo

    Scene scene = Scene.fromFile("test.fbx");
    //Criar um novo sistema de eixos com vetor para cima para o eixo +Y e frontal para o eixo +X.
    var target = new AxisSystem(CoordinateSystem.LEFT_HANDED, Axis.Y_AXIS, Axis.X_AXIS);
    //Criar uma matriz de transformação do sistema de eixos atual da cena para nosso sistema de eixos personalizado
    var transform = AxisSystem.fromAssetInfo(scene.getAssetInfo()).transformTo(target);
    //Aplicar a transformação a todas as geometrias na cena.
    PolygonModifier.applyTransform(scene.getRootNode(), transform);


 
 Português