Aspose.3D for Java是独立的Gameware和计算机辅助设计(CAD)API,用于处理3D文件。同时支持大多数流行的3D文件格式,应用程序能够轻松建立,读取,转换和修改3D文件。此外,API还能够帮助开发人员在游戏中建模和建立大量世界,为设计可视化建立出色的场景,参与虚拟现实体验,将动画属性添加到3D场景文件,使用3D变换格式化元素等等。安全
在最新版的Aspose.3D for Java v19.8(点击下载)中,新增在Wavefront OBJ中添加点云支持,加强Aspose.3D的安全性审查,修复DRC到STL转换失败等多项问题,下面咱们用示例来演示该功能的使用和工做原理。动画
/** * Gets the flag whether the exporter should export the scene as point cloud(without topological structure), default value is false */ public boolean getPointCloud(); /** * Sets the flag whether the exporter should export the scene as point cloud(without topological structure), default value is false * @param value New value */ public void setPointCloud(boolean value);
示例代码生成一个obj格式的球面点云。this
Scene scene = new Scene(new Sphere()); ObjSaveOptions opt = new ObjSaveOptions(); opt.setPointCloud(true); scene.save("sphere.obj", opt);
/** * Create a polygon with 4 vertices(quad) * @param v1 Index of the first vertex * @param v2 Index of the second vertex * @param v3 Index of the third vertex * @param v4 Index of the fourth vertex */ public void createPolygon(int v1, int v2, int v3, int v4); /** * Create a polygon with 3 vertices(triangle) * @param v1 Index of the first vertex * @param v2 Index of the second vertex * @param v3 Index of the third vertex */ public void createPolygon(int v1, int v2, int v3);
示例代码:spa
Mesh mesh = new Mesh(); mesh.createPolygon(new int[] { 0, 1, 2 }); //The old CreatePolygon needs to create a temporary array for holding the face indices mesh.createPolygon(0, 1, 2); //The new overloads doesn't need extra allocation, and it's optimized internally.
/** * The JSON content of GLTF file is indented for human reading, default value is false */ public boolean getPrettyPrint(); /** * The JSON content of GLTF file is indented for human reading, default value is false * @param value New value */ public void setPrettyPrint(boolean value);
旧的prettyPrint是一个公共领域,它已被财产取代以保持一致。示例代码:设计
Scene scene = new Scene(new Sphere()); GLTFSaveOptions opt = new GLTFSaveOptions(FileFormat.GLTF2); //opt.prettyPrint = true; //Old code opt.setPrettyPrint(true); //Use setter to change this configuration. scene.save("sphere.gltf", opt);