Aspose.3D 17.7.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package Aspose.3D --version 17.7.0                
NuGet\Install-Package Aspose.3D -Version 17.7.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Aspose.3D" Version="17.7.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Aspose.3D --version 17.7.0                
#r "nuget: Aspose.3D, 17.7.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Aspose.3D as a Cake Addin
#addin nuget:?package=Aspose.3D&version=17.7.0

// Install Aspose.3D as a Cake Tool
#tool nuget:?package=Aspose.3D&version=17.7.0                

Aspose.3D is a class library for working with 3D files. It allows developers to create/manipulate/render 3D scene and work with FBX,STL,OBJ,3DS,U3D,DAE,PDF,DRC,GLTF files. It allows you to open files and manipulate the elements in the 3D scene, from line,mesh,nurbs curve, to more complex elements animation, and then export to FBX ASCII, FBX binary, STL ASCII, STL binary, Collada, Wavefront .obj, 3DS, PDF formats, glTF, glTF2, Google Draco.

Product Compatible and additional computed target framework versions.
.NET Framework net35 is compatible.  net40 is compatible.  net403 was computed.  net45 was computed.  net451 was computed.  net452 was computed.  net46 was computed.  net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages (5)

Showing the top 5 NuGet packages that depend on Aspose.3D:

Package Downloads
Aspose.Total

Aspose.Total for .NET is the most complete package of all .NET file format APIs offered by Aspose. It empowers developers to create, edit, render, print and convert between a wide range of popular document formats within any .NET, C#, ASP.NET and VB.NET applications.

nilnul.geometry._stereo_._LIB_

cubic/3dimension geometry

Aspose.3D.Codec.SkiaSharp

This plugin allows you to use SkiaSharp's image codec to encode and decode textures.

Pilz.Simple3DFileParser

Package Description

nilnul._physic_._DLL_

physics fundamentals, including force, mass, gravity, heating, etc

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
24.10.0 986 10/30/2024
24.9.0 2,634 9/29/2024
24.8.0 2,433 8/30/2024
24.7.1 1,008 8/7/2024
24.7.0 117 7/31/2024
24.6.0 5,552 7/1/2024
24.5.0 5,697 5/29/2024
24.4.0 3,446 4/29/2024
24.3.0 5,263 3/26/2024
24.2.0 3,958 2/28/2024
24.1.0 5,003 1/30/2024
23.12.0 7,561 12/28/2023
23.11.1 1,270 12/8/2023
23.11.0 7,815 11/29/2023
23.10.0 8,951 10/30/2023
23.9.0 8,056 9/27/2023
23.8.0 10,240 8/25/2023
23.7.0 10,790 7/26/2023
23.6.0 9,782 6/26/2023
23.5.0 7,211 5/26/2023
23.4.0 8,575 4/13/2023
23.3.0 8,268 3/16/2023
23.2.0 7,888 2/14/2023
23.1.0 13,638 1/18/2023
22.12.0 11,018 12/21/2022
22.11.0 11,600 11/17/2022
22.10.0 12,375 10/14/2022
22.9.0 8,463 9/9/2022
22.8.0 23,682 8/3/2022
22.7.0 7,510 7/8/2022
22.6.0 12,008 6/10/2022
22.5.0 13,735 5/9/2022
22.4.0 8,066 4/13/2022
22.3.0 20,195 3/4/2022
22.2.0 9,757 2/7/2022
22.1.0 10,683 1/5/2022
21.12.0 2,646 12/3/2021
21.11.0 9,923 11/11/2021
21.10.0 7,990 10/9/2021
21.9.0 13,933 9/6/2021
21.8.0 16,383 8/6/2021
21.7.0 14,301 7/5/2021
21.6.0 4,473 6/7/2021
21.5.0 11,410 5/6/2021
21.4.0 11,838 4/2/2021
21.3.0 8,747 3/4/2021
21.2.1 11,529 2/14/2021
21.2.0 1,811 2/7/2021
21.1.0 3,624 1/8/2021
20.12.2 3,792 12/10/2020
20.12.0 1,735 12/5/2020
20.11.0 8,759 11/3/2020
20.9.0 4,148 9/4/2020
20.8.0 3,264 8/11/2020
20.7.0 3,283 7/3/2020
20.6.1 2,647 6/16/2020
20.6.0 3,367 6/8/2020
20.5.0 10,295 5/12/2020
20.4.0 4,884 4/9/2020
20.3.0 4,274 3/3/2020
20.2.1 3,597 2/14/2020
20.2.0 2,076 2/10/2020
20.1.0 5,081 1/2/2020
19.12.2 3,697 12/10/2019
19.12.0 1,742 12/9/2019
19.11.0 2,300 11/5/2019
19.10.0 44,730 10/9/2019
19.9.0 2,385 9/9/2019
19.8.0 2,225 8/2/2019
19.7.0 2,373 7/8/2019
19.6.0 2,968 6/5/2019
19.5.0 2,635 5/12/2019
19.4.0 2,202 4/4/2019
19.3.0 2,205 3/8/2019
19.2.0 2,897 2/2/2019
19.1.0 2,083 1/9/2019
18.12.0 2,308 12/6/2018
18.11.0 2,357 11/6/2018
18.10.0 2,248 10/9/2018
18.9.0 2,657 9/6/2018
18.8.0 2,234 8/8/2018
18.7.0 2,616 7/11/2018
18.6.0 3,249 6/11/2018
18.5.0 2,670 5/10/2018
18.4.0 2,551 4/16/2018
18.3.0 2,350 3/14/2018
18.2.0 2,407 2/8/2018
18.1.0 2,593 1/8/2018
17.12.0 2,345 12/8/2017
17.11.0 2,806 11/6/2017
17.10.0 2,286 10/10/2017
17.9.0 2,340 9/7/2017
17.8.0 2,267 8/8/2017
17.7.0 2,364 7/17/2017
17.6.0 2,961 6/5/2017
17.5.0 2,547 5/8/2017
17.4.0 2,451 4/5/2017
17.3.0 2,312 3/6/2017
17.2.0 2,345 2/15/2017
17.1.0 2,406 1/5/2017
16.12.0 2,633 12/4/2016
16.11.0 2,498 11/1/2016
16.9.0 2,342 9/29/2016
2.1.0 2,378 8/30/2016
2.0.0 2,504 8/2/2016
1.7.0 2,338 6/29/2016
1.6.1 2,670 5/26/2016
1.5.0 2,453 4/27/2016
1.4.0 2,450 4/1/2016
1.3.0 2,472 2/23/2016
1.2.0 2,479 12/18/2015
1.1.0 2,636 11/27/2015
1.0.0 2,566 10/26/2015

This page contains release notes for Aspose.3D for .NET 17.7.

                   
   
Other Improvements and Changes
Key Summary Category

THREEDNET-265 Add support of exporting 3D scene to PLY format.
New feature


THREEDNET-271 Simplify the creation of transform matrix. New feature

THREEDNET-270 Allow generate mesh from grayscale image as a height map. New feature

THREEDNET-272 The FBX file generated cannot be edited by 3ds max. Bug

THREEDNET-274 UVs are corrupted when exporting a scene in FBX format. Bug

Public API and Backwards Incompatible Changes
See the list of any changes made to the public API such as added, renamed, removed or deprecated members as well as any non-backward compatible change made to Aspose.3D for .NET. If you have concerns about any change listed, please raise it on the Aspose.3D support forum.
Adds Members to Aspose.ThreeD.Utilities.Matrix4 Class
C#

/// <summary>
/// Creates a translation matrix
/// </summary>
/// <param name="t"></param>
/// <returns></returns>
public static Matrix4 Translate(Vector3 t);
/// <summary>
/// Creates a translation matrix
/// </summary>
/// <param name="tx"></param>
/// <param name="ty"></param>
/// <param name="tz"></param>
/// <returns></returns>
public static Matrix4 Translate(double tx, double ty, double tz);
/// <summary>
/// Create a scale matrix
/// </summary>
/// <param name="s"></param>
/// <returns></returns>
public static Matrix4 Scale(Vector3 s);

/// <summary>
/// Create a scale matrix
/// </summary>
/// <param name="s"></param>
/// <returns></returns>
public static Matrix4 Scale(double s);

/// <summary>
/// Create a scale matrix
/// </summary>
/// <param name="sx"></param>
/// <param name="sy"></param>
/// <param name="sz"></param>
/// <returns></returns>
public static Matrix4 Scale(double sx, double sy, double sz);

/// <summary>
/// Create a rotation matrix from euler angle
/// </summary>
/// <param name="eul">Rotation in radian</param>
/// <returns></returns>
public static Matrix4 RotateFromEuler(Vector3 eul);
/// <summary>
/// Create a rotation matrix from euler angle
/// </summary>
/// <param name="rx">Rotation in x axis in radian</param>
/// <param name="ry">Rotation in y axis in radian</param>
/// <param name="rz">Rotation in z axis in radian</param>
/// <returns></returns>
public static Matrix4 RotateFromEuler(double rx, double ry, double rz)

/// <summary>
/// Create a rotation matrix by rotation angle and axis
/// </summary>
/// <param name="angle">Rotate angle in radian</param>
/// <param name="axis">Rotation axis</param>
/// <returns></returns>
public static Matrix4 Rotate(double angle, Vector3 axis);

/// <summary>
/// Create a rotation matrix from a quaternion
/// </summary>
/// <param name="rotate"></param>
/// <returns></returns>
public static Matrix4 Rotate(Quaternion rotate);
 
//Create a transform that translates (1, 0, 0) then rotates alone the y axis pi radian.
var m  = Matrix4.RotateFromEuler(0, Math.PI, 0) * Matrix4.Translate(1, 0, 0);


Adds new classes Aspose.ThreeD.Utilities.ComposeOrder and Aspose.ThreeD.Utilities.TransformBuilder

The transform builder simplifies the creation of the transformation matrix by a chain of operations.
C#

//use prepend order so the calculation is performed from left to right:
var m = (new TransformBuilder(ComposeOrder.Prepend))
   //Change the (x, y, z) into (x + 1, y, z)
   .Translate(1, 0, 0)
   //Rotate alone with the Y axis with 180deg will change the (x, y, z) into (-x, y, -z)
   .RotateEulerDegree(0, 180, 0)
   //Scale by 2 will change the (x, y, z) into (2x, 2y, 2z)
   .Scale(2)
   //change the (x, y, z) into (z, y, x)
   .Rearrange(Axis.ZAxis, Axis.YAxis, Axis.XAxis)
   .Matrix;
   
//Apply this matrix on a (0, 0, 0) vector, then we get the right result (0, 0, -2)
var t = m * Vector3.Origin;


Members updated to Aspose.ThreeD.Formats

This change introduces a new class Aspose.ThreeD.Formats.PlyFormat, which allows you to encode single mesh instead of the whole scene:
C#

public static readonly Aspose.ThreeD.FileFormat PLY;
//Changed to
public static readonly Aspose.ThreeD.Formats.PlyFormat PLY;
 
// sample code
// Create a cylinder object and save it to ply file
FileFormat.PLY.EncodeMesh(new Cylinder(), "cylinder.ply");


Adds a new class Aspose.ThreeD.Formats.PlySaveOptions

Ply format has no an official standard, different application may have different definitions of its vertex format, this class allows you to define details of the Ply format.For example the default component name for texture coordinate components is 'u' and 'v', but some application uses 's' and 't', then you can change the name by using this class:
C#

//Save as binary PLY format, the default value is ASCII
PlySaveOptions opt = new PlySaveOptions(FileContentType.Binary);
//change the components to &#39;s&#39; and &#39;t&#39;
opt.TextureCoordinateComponents.Item1 = "s";
opt.TextureCoordinateComponents.Item2 = "t";
//save the mesh
FileFormat.PLY.EncodeMesh(new Cylinder(), "cylinder.ply", opt);


Usage Examples
Please check the list of help topics added or updated in the Aspose.3D Wiki docs:

   
       

       
https://docs.aspose.com/display/3dnet/Aspose.3D+for+.NET+17.7+Release+Notes