Aspose.3D 17.7.0

.NET Framework 3.5
There is a newer version of this package available.
See the version list below for details.
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.
dotnet add package Aspose.3D --version 17.7.0
<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, C# scripting and .NET Interactive. 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 Versions
.NET Framework net35 net40 net403 net45 net451 net452 net46 net461 net462 net463 net47 net471 net472 net48
Compatible target framework(s)
Additional computed target framework(s)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

NuGet packages (1)

Showing the top 1 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.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
22.9.0 330 9/9/2022
22.8.0 3,572 8/3/2022
22.7.0 2,930 7/8/2022
22.6.0 3,718 6/10/2022
22.5.0 4,786 5/9/2022
22.4.0 1,821 4/13/2022
22.3.0 7,208 3/4/2022
22.2.0 2,514 2/7/2022
22.1.0 3,921 1/5/2022
21.12.0 1,288 12/3/2021
21.11.0 2,265 11/11/2021
21.10.0 1,776 10/9/2021
21.9.0 5,582 9/6/2021
21.8.0 7,491 8/6/2021
21.7.0 2,812 7/5/2021
21.6.0 2,734 6/7/2021
21.5.0 3,136 5/6/2021
21.4.0 5,262 4/2/2021
21.3.0 2,373 3/4/2021
21.2.1 4,578 2/14/2021
21.2.0 469 2/7/2021
21.1.0 1,896 1/8/2021
20.12.2 1,695 12/10/2020
20.12.0 377 12/5/2020
20.11.0 2,807 11/3/2020
20.9.0 2,240 9/4/2020
20.8.0 1,724 8/11/2020
20.7.0 1,223 7/3/2020
20.6.1 932 6/16/2020
20.6.0 1,885 6/8/2020
20.5.0 6,993 5/12/2020
20.4.0 2,466 4/9/2020
20.3.0 2,512 3/3/2020
20.2.1 1,364 2/14/2020
20.2.0 748 2/10/2020
20.1.0 2,816 1/2/2020
19.12.2 1,303 12/10/2019
19.12.0 423 12/9/2019
19.11.0 1,017 11/5/2019
19.10.0 14,680 10/9/2019
19.9.0 928 9/9/2019
19.8.0 856 8/2/2019
19.7.0 897 7/8/2019
19.6.0 1,076 6/5/2019
19.5.0 1,178 5/12/2019
19.4.0 729 4/4/2019
19.3.0 837 3/8/2019
19.2.0 1,480 2/2/2019
19.1.0 699 1/9/2019
18.12.0 839 12/6/2018
18.11.0 1,015 11/6/2018
18.10.0 775 10/9/2018
18.9.0 1,291 9/6/2018
18.8.0 827 8/8/2018
18.7.0 1,216 7/11/2018
18.6.0 1,693 6/11/2018
18.5.0 1,260 5/10/2018
18.4.0 1,098 4/16/2018
18.3.0 987 3/14/2018
18.2.0 994 2/8/2018
18.1.0 1,163 1/8/2018
17.12.0 901 12/8/2017
17.11.0 1,295 11/6/2017
17.10.0 824 10/10/2017
17.9.0 948 9/7/2017
17.8.0 857 8/8/2017
17.7.0 877 7/17/2017
17.6.0 1,546 6/5/2017
17.5.0 1,136 5/8/2017
17.4.0 964 4/5/2017
17.3.0 941 3/6/2017
17.2.0 946 2/15/2017
17.1.0 995 1/5/2017
16.12.0 1,208 12/4/2016
16.11.0 1,055 11/1/2016
16.9.0 890 9/29/2016
2.1.0 908 8/30/2016
2.0.0 1,081 8/2/2016
1.7.0 953 6/29/2016
1.6.1 1,197 5/26/2016
1.5.0 1,009 4/27/2016
1.4.0 983 4/1/2016
1.3.0 1,119 2/23/2016
1.2.0 1,073 12/18/2015
1.1.0 1,202 11/27/2015
1.0.0 1,061 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