Browse our Products

Aspose.3D pour Node.js via Java 24.2 Notes de publication

Améliorations et modifications

KeyRésuméCatégorie
THREEDJAVA-329Ajouter InputStream/OutputStream natif pour les opérations d’E/S de la scèneAmélioration
THREEDNET-1499OBJ vers GLTF - grand nombre de sommetsAmélioration
THREEDNET-1509Mettre à niveau le support .net 7.0 vers .net 8.0Amélioration
THREEDNET-1460Les nœuds de squelette exportés par Fbx n’ont pas de transformation mais ont une pose à la placeCorrection de bug
THREEDNET-1494Ajout du support de l’extension KHR_mesh_quantization lors de l’importation de GLTFCorrection de bug
THREEDNET-1495L’exportation d’animations de GLB vers FBX peut provoquer un échec de SlerpCorrection de bug
THREEDNET-1496Un type d’attribut non pris en charge peut provoquer l’arrêt de l’importateur MayaCorrection de bug
THREEDNET-1497Une primitive sans valeur de propriété valide peut échouer lors du chargement dans USDCorrection de bug
THREEDNET-1498Problème de référence externe 3MF dans l’élément de constructionCorrection de bug
THREEDNJS-115Ajouter la méthode « toRadian » à MathUtils dans Node.jsAmélioration

Modifications de l’API

Cette version est principalement une version de correction de bugs, quelques modifications de l’API :

Ajout de membres à la classe com.aspose.threed.Mesh:

    /**
     *  Renvoie le maillage triangulé
     *
     * @return Le maillage actuel si le maillage actuel est déjà triangulé, sinon un nouveau maillage triangulé sera calculé et renvoyé
     *
     */
    public Mesh triangulate()

Cette fonction vous permet de trianguler un maillage de manière simple.

Exemple de code

        //Le maillage du plan n’a qu’un seul polygone avec 4 points de contrôle
        Mesh mesh = (new Plane()).toMesh();
        //Après triangulation, le rectangle du nouveau maillage deviendra 2 triangles.
        Mesh triangulated = mesh.triangulate();

Ajout de membres à la classe com.aspose.threed.TriMesh:

    /**
     *  Ajouter un nouveau triangle
     *
     * @param a L’index du premier sommet
     * @param b L’index du deuxième sommet
     * @param c L’index du troisième sommet
     */
    public void addTriangle(int a, int b, int c);

    /**    
     * Écrire les données des sommets dans le flux spécifié    
     *    
     * @param stream Le flux auquel les données des sommets seront écrites    
     */    
    public void writeVerticesTo(OutputStream stream)    throws IOException;

    /**    
     * Écrire les données d’index sous forme d’entier 16 bits vers le flux    
     *    
     * @param stream     
     * </pre>    
     *    
     */    
    public void write16bIndicesTo(OutputStream stream)    throws IOException;
        
    /**    
     * Écrire les données d’index sous forme d’entier 32 bits vers le flux    
     *    
     * @param stream     
     */    
    public void write32bIndicesTo(OutputStream stream)    throws IOException;

Cette fonction vous permet d’ajouter manuellement un triangle au TriMesh.

Exemple de code

  int[] indices = new int[] { 0,  1,  2 };
  byte[] vertices = new byte[]{
      0, 0, 0, 191,
      0, 0, 0, 0,
      0, 0, 0, 191,
      0, 0, 0, 191,
      0, 0, 0, 0,
      0, 0, 0, 63,
      0, 0, 0, 63,
      0, 0, 0, 0,
      0, 0, 0, 63
  };

  VertexDeclaration vd = new VertexDeclaration();
  vd.addField(VertexFieldDataType.F_VECTOR3, VertexFieldSemantic.POSITION);
  //créer un TriMesh vide avec la déclaration de sommet spécifiée
  var triMesh = new TriMesh("", vd);
  //charger les sommets directement à partir d’octets
  triMesh.loadVerticesFromBytes(vertices);
  triMesh.addTriangle(0, 1, 2);

Ajout de membres à la classe com.aspose.threed.Scene:

    /**    
     *  Ouvre la scène à partir du flux donné en utilisant le format de fichier spécifié.    
     *    
     * @param stream Flux d’entrée, l’utilisateur est responsable de la fermeture du flux.    
     * @param format Format de fichier.    
     * @param cancellationToken Jeton d’annulation pour la tâche de chargement    
     *    
     */    
    public static Scene fromStream(InputStream stream, FileFormat format, Cancellation cancellationToken)    
            throws IOException    
    /**    
     *  Ouvre la scène à partir du flux donné en utilisant le format de fichier spécifié.    
     *    
     * @param stream Flux d’entrée, l’utilisateur est responsable de la fermeture du flux.    
     * @param format Format de fichier.    
     */    
    public static Scene fromStream(InputStream stream, FileFormat format)    
            throws IOException    
    /**    
     *  Enregistre la scène vers un flux en utilisant le format de fichier spécifié.    
     *    
     * @param stream Flux de sortie, l’utilisateur est responsable de la fermeture du flux.    
     * @param format Format.    
     */    
    public void save(OutputStream stream, FileFormat format)    
            throws IOException    
    /**    
     *  Enregistre la scène vers un flux en utilisant le format de fichier spécifié.    
     *    
     * @param stream Flux de sortie, l’utilisateur est responsable de la fermeture du flux.    
     * @param format Format.    
     * @param cancellationToken Jeton d’annulation pour la tâche d’enregistrement    
     */    
    public void save(OutputStream stream, FileFormat format, Cancellation cancellationToken)    
            throws IOException    
    /**    
     *  Enregistre la scène vers un flux en utilisant le format de fichier spécifié.    
     *    
     * @param stream Flux de sortie, l’utilisateur est responsable de la fermeture du flux.    
     * @param options Options plus détaillées pour enregistrer le flux.    
     */    
    public void save(OutputStream stream, SaveOptions options)    
            throws IOException    
    /**    
     *  Enregistre la scène vers un flux en utilisant le format de fichier spécifié.    
     *    
     * @param stream Flux de sortie, l’utilisateur est responsable de la fermeture du flux.    
     * @param options Options plus détaillées pour enregistrer le flux.    
     * @param cancellationToken Jeton d’annulation pour la tâche d’enregistrement    
     */    
    public void save(OutputStream stream, SaveOptions options, Cancellation cancellationToken)    
            throws IOException    

Il n’y avait que la version InputStream de save/open/fromStream auparavant, maintenant nous prenons en charge InputStream/OutputStream de JDK.


 
 Français