DOCX JPG PDF XML OBJ
  Product Family
OBJ

Generate Point Cloud to OBJ via Java

Generate Point Cloud to OBJ using Java library without any 3D modeling software.

How to Generate Point Cloud to OBJ File Using Java

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

Aspose.3D for Java

API which is a feature-rich, powerful and easy to use point cloud API for Java platform. You can download its latest version directly from

Aspose Maven Repository

and install it within your Maven-based project by adding the following configurations to the pom.xml.

Repository


<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>

Dependency

<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-3d</artifactId>
<version>version of aspose-3d API</version>
<classifier>jdk17</classifier>
</dependency>

Steps to Generate Point Cloud to OBJ via Java

Java programmers can easily generate point cloud to OBJ in just a few lines of code.

  • Load OBJ 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 JAVA is supported on all major operating systems. Just make sure that you have the following prerequisites.

  • Microsoft Windows or a compatible OS with Java Runtime Environment for JSP/JSF Application and Desktop Applications.
  • Get latest version of Aspose.3D for Java directly from Maven.
 

JAVA code to Generate Point Cloud to OBJ


//The source file that needs to generate the point cloud and the output file after saving
String file = "template.obj";
String output = "outFile.ply";

//create an instance of Scene
Scene scene = new Scene();
scene.open(file, FileFormat.WAVEFRONTOBJ);

//Get pointcloud object of Aspose.3D and generate a point cloud
PointCloud pc=new PointCloud();
scene.getRootNode().accept((Node n) ->
{
    if(n.getEntities().size()>0)
    {
        Matrix4 transform=n.evaluateGlobalTransform(true);
        for(Entity entity : n.getEntities())
        {
            if(entity instanceof Geometry){
                Geometry g= (Geometry) entity;
                Merge(pc, g, transform);
            }
            else if(entity instanceof IMeshConvertible){
                IMeshConvertible mc = (IMeshConvertible) entity;
                Mesh mesh=mc.toMesh();
                Merge(pc, mesh, transform);
            }
        }
    }
    return true;
});

// create an instance of newScene
Scene newScene= new Scene(pc);
PlySaveOptions ply = new PlySaveOptions();
ply.setPointCloud(true);
newScene.save(output, ply);

//Merge method for generating point clouds
private void Merge(PointCloud pc, Geometry g, Matrix4 transform)
{
    PointCloud tmp = PointCloud.fromGeometry(g, 10);
    for (int i = 0; i < tmp.getControlPoints().size(); i++)
    {
        Vector4 pt=Matrix4.mul(transform, tmp.getControlPoints().get(i));
        pc.getControlPoints().add(pt);
    }
}
 
  • Free App to Generate Point Cloud to OBJ

    Point Cloud OBJ right now by visiting our Live Demos website.The live demo has the following benefits

      No need to download Aspose API.
      No need to write any code.
      Just upload OBJ file and hit the "Generate" button
      You will get the download link.

    Java 3D Scene Manipulation Library

    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.

    OBJ What is OBJ File Format?

    OBJ files are used by wavefront's advanced visualizer application to define and store the geometric objects. Backward and forward transmission of geometric data is made possible through OBJ files. Both polygonal geometry like points, lines, texture vertices, faces and free-form geometry (curves and surfaces) are supported by OBJ format. This format does not support animation or information related to light and position of scenes.

    Read More

    Other Supported App to Generate Point Cloud to Formats

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

    3DS (3D Studio Mesh File Format)
    3MF (3D Manufacturing Format)
    AMF (Additive Manufacturing Format)
    ASE (Aseprite Sprite File)
    DAE (Digital Asset Exchange File Format)
    DXF (Autodesk Drawing Exchange File Format)
    DRC (Google Draco)
    FBX (Filmbox Interchange File)
    GLB (Binary GlTF File)
    GLTF (GL Transmission Format)
    JT (JT File Format)
    OBJ (OBJ File Format)
    PLY (Polygon File Format)
    PDF (3D PDF)
    RVM (RVM File Format)
    STL (Stereolithography)
    U3D (Universal 3D File Format)
    VRML (Virtual Reality Modeling Language)
    X (DirectX Model File)
    USD (Universal Scene Description)
    USDZ (Universal Scene Description Zip Archive)