HTML JPG PDF XML 3MF
Aspose.3D  for .NET
3MF

Generate Point Cloud to 3MF via C#

Build your own .NET apps to generate point cloud to 3MF files using server-side APIs.

How to Generate Point Cloud to 3MF File Using C#

In order to generate point cloud to 3MF file, we’ll use

Aspose.3D for .NET

API which is a feature-rich, powerful and easy to use API for C# platform to be used with generate point cloud. Open

NuGet

package manager, search for Aspose.3D and install. You may also use the following command from the Package Manager Console.

Package Manager Console Command


PM> Install-Package Aspose.3D

Steps to Generate Point Cloud to 3MF via C#

Aspose.3D makes it easy for the developers to generate point cloud to the 3MF file with just few lines of code.

  • Load 3MF file via the constructor of Scene class
  • Get pointcloud object of Aspose.3D
  • Create a transform object through the EvaluateGlobalTransform method
  • Generate point cloud using Merge method
  • Call the Scene.Save method with object

System Requirements

Aspose.3D for .NET is supported on all major operating systems. Just make sure that you have the following prerequisites.

  • Microsoft Windows or a compatible OS with .NET Framework, .NET Core, Mono
  • Development environment like Microsoft Visual Studio
  • Aspose.3D for .NET referenced in your project
 

C# code to Generate Point Cloud to 3MF


//The source file that needs to generate the point cloud
string file = "template.3mf";

// create an instance of Scene
Scene scene = new Scene(file);

//Get pointcloud object of Aspose.3D and generate a point cloud
var pc = new PointCloud();
scene.RootNode.Accept((Node n) =>
{
    if (n.Entities.Count > 0)
    {
        var transform = n.EvaluateGlobalTransform(true);
        foreach (var entity in n.Entities)
        {
            if (entity is Geometry g)
            {
                Merge(pc, g, transform);
            }
            else if (entity is IMeshConvertible mc)
            {
                var mesh = mc.ToMesh();
                Merge(pc, mesh, transform);
            }

        }
    }
    return true;
});

//Merge method for generating point clouds
private void Merge(PointCloud pc, Geometry g, Matrix4 transform)
{
    var tmp = PointCloud.FromGeometry(g, 10);
    for (int i = 0; i < tmp.ControlPoints.Count; i++)
    {
        var pt = transform * tmp.ControlPoints[i];
        pc.ControlPoints.Add(pt);
    }
}

// create an instance of newScene
var newScene = new Scene(pc);

//When saving, you need to create a SaveOptions object of the save format
string output=System.IO.Path.GetTempPath() + Guid.NewGuid().ToString() + ".ply";
PlySaveOptions ply = new PlySaveOptions();
ply.PointCloud = true;
newScene.Save(output,ply);
 
  • About Aspose.3D for .NET API

    Aspose.3D is a CAD and Gameware API to load, modify and convert 3D files. API is a standalone and does not require any any 3D modeling or rendering software. One can easily use API for Discreet3DS, WavefrontOBJ, STL (ASCII, Binary), Universal3D, FBX (ASCII, Binary), Collada, glTF, PLY, GLB, DirectX and more formats.

    Free App to Generate Point Cloud to 3MF

    Check our live demos to Point Cloud 3DS with following benefits.

      No need to download or setup anything
      No need to write or compile code
      Just upload 3MF file and hit the "Generate" button
      Download 3MF file from the link, if required

    3MF What is 3MF File Format?

    3MF, 3D Manufacturing Format, is used by applications to render 3D object models to a variety of other applications, platforms, services and printers. It was built to avoid the limitations and issues in other 3D file formats, like STL, for working with the latest versions of 3D printers. 3MF is relatively a new file format that has been developed and published by the 3MF consortium.

    Read More

    Other Supported App to Generate Point Cloud to Formats

    Using C#, One can also generate point cloud to many other file formats including.

    3DS (3D Studio Mesh File Format)
    AMF (Additive Manufacturing Format)
    ASE (2D Animation File)
    DAE (Digital Asset Exchange)
    DXF (Drawing Interchange Format)
    DRC (Google Draco)
    FBX (3D Format)
    GLB (3D File Binary Representation)
    GLTF (GL Transmission Format)
    JT (Jupiter Tessellation File)
    OBJ (3D File Format)
    PLY (Polygon File Format)
    PDF (3D PDF)
    RVM (AVEVA Plant Design Model)
    STL (Interchangeable 3D Surface Geometry)
    U3D (Universal 3D)
    VRML (Virtual Reality Modeling Language)
    X (DirectX Model Image)
    USD (Universal Scene Description)
    USDZ (Universal Scene Description Zip Archive)