Jelajahi Produk kami

Catatan Rilis Aspose.3D untuk Node.js melalui Java 24.8

Peningkatan dan Perubahan

KeyRingkasanKategori
THREEDNET-1576Memaparkan utilitas sistem sumbu internal ke pengguna.Tugas
THREEDNET-1579Menerapkan dukungan XZ stream penuhTugas
THREEDNET-1578Metadata versi JT 9.5Peningkatan
THREEDNET-1580Menambahkan dukungan PMI untuk format JT 9Peningkatan
THREEDNET-1575Rotasi Model GLB yang DikonversiPerbaikan bug
THREEDNET-1577Kesalahan “tidak dapat membuka file ini” untuk file 3mfPerbaikan bug

Perubahan API

Ditambahkan kelas com.aspose.threed.JtLoadOptions

    /**
     *  Muat properti dari tabel properti JT sebagai properti Aspose.3D.
     *  Nilai default adalah false.
     *
     * @return  Muat properti dari tabel properti JT sebagai properti Aspose.3D. 
     * Nilai default adalah false.
     */
    public boolean getLoadProperties()
    
    /**
     *  Muat properti dari tabel properti JT sebagai properti Aspose.3D.
     *  Nilai default adalah false.
     *
     * @param value Nilai baru
     */
    public void setLoadProperties(boolean value)
    
    /**
     *  Muat informasi PMI dari file JT jika memungkinkan, data akan disimpan sebagai properti "PMI" dari {@link com.aspose.threed.Scene#getAssetInfo}.
     *  Nilai default adalah false.
     *
     * @return  Muat informasi PMI dari file JT jika memungkinkan, data akan disimpan sebagai properti "PMI" dari {@link com.aspose.threed.Scene#getAssetInfo}.
     * Nilai default adalah false.
     */
    public boolean getLoadPMI()
    
    /**
     *  Muat informasi PMI dari file JT jika memungkinkan, data akan disimpan sebagai properti "PMI" dari {@link com.aspose.threed.Scene#getAssetInfo}.
     *  Nilai default adalah false.
     *
     * @param value Nilai baru
     */
    public void setLoadPMI(boolean value)
        

JtLoadOptions yang baru ditambahkan memungkinkan Anda menginstruksikan Aspose.3D untuk mengurai metadata file JT dan menyimpannya sebagai properti Aspose.3D standar.

Contoh kode

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

Ditambahkan anggota ke kelas com.aspose.threed.AxisSystem:

    /**
     *  Buat matriks yang digunakan untuk mengonversi dari sistem sumbu saat ini ke sistem sumbu target.
     *
     * @param targetSystem Sistem sumbu target
     * @return Matriks transformasi baru untuk melakukan konversi sumbu
     */
    public Matrix4 transformTo(AxisSystem targetSystem)


    /**
     *  Buat {@link com.aspose.threed.AxisSystem} dari {@link com.aspose.threed.AssetInfo}
     *
     * @param assetInfo Dari mana informasi aset untuk membaca sistem koordinat, vektor atas, dan depan.
     * @return Sistem sumbu yang berisi sistem koordinat, atas, depan dari informasi aset yang diberikan
     */
    public static AxisSystem fromAssetInfo(AssetInfo assetInfo)

Contoh kode

Metode baru yang ditambahkan memungkinkan Anda membuat matriks untuk mengonversi vektor dari satu sistem sumbu ke sistem sumbu lainnya.

    Scene scene = Scene.fromFile("test.fbx");
    //Buat sistem sumbu baru dengan vektor atas ke sumbu +Y dan depan ke +X.
    var target = new AxisSystem(CoordinateSystem.LEFT_HANDED, Axis.Y_AXIS, Axis.X_AXIS);
    //Buat matriks transformasi dari sistem sumbu saat ini ke sistem sumbu khusus kita
    var transform = AxisSystem.fromAssetInfo(scene.getAssetInfo()).transformTo(target);
    //Terapkan transformasi ke semua geometri dalam adegan.
    PolygonModifier.applyTransform(scene.getRootNode(), transform);

Ditambahkan anggota ke kelas com.aspose.threed.PolygonModifier:

    /**
     *  Terapkan matriks transformasi pada titik kontrol dari semua geometri
     *
     * @param node 
     * @param transform 
     */
    public static void applyTransform(Node node, Matrix4 transform)

Metode baru ini memungkinkan Anda menerapkan matriks ke semua titik kontrol dari semua geometri turunan.

Contoh kode

    Scene scene = Scene.fromFile("test.fbx");
    //Buat sistem sumbu baru dengan vektor atas ke sumbu +Y dan depan ke +X.
    var target = new AxisSystem(CoordinateSystem.LEFT_HANDED, Axis.Y_AXIS, Axis.X_AXIS);
    //Buat matriks transformasi dari sistem sumbu saat ini ke sistem sumbu khusus kita
    var transform = AxisSystem.fromAssetInfo(scene.getAssetInfo()).transformTo(target);
    //Terapkan transformasi ke semua geometri dalam adegan.
    PolygonModifier.applyTransform(scene.getRootNode(), transform);


 
 Indonesia