Java API to manipulate and convert 3D files
Gameware and CAD APIs to Read, Write, Manipulate & Convert 3D file formats within any Java application.Download Free Trial
Aspose.3D for Java
Aspose.3D for Java is a feature-rich Gameware and Computer-Aided-Designing (CAD) API that empowers Java applications to connect with 3D document formats without requiring any 3D modeling software being installed on the server. It supports most of the popular 3D file formats, allowing developers to easily create, read, convert & modify 3D files.
At A Glance
An overview of the capabilities of Aspose.3D for Java.
- Create 3D Scenes
- Create Mesh Surface
- Polygon Triangulation
- Split Mesh by Material
- Setup Normal for Graphics
- Setup UV for Graphics
- Triangulate Mesh
- Share Mesh Geometry Data
- Add Material to Object
- Add Target Camera
- Cast & Receive Shadows
Aspose.3D for Java supports the Java runtime.
- JSP/JSF Application
- Desktop Application
Supported File Formats
Aspose.3D for Java supports famous 3D file formats.
- Autodesk: FBX 7.2 to 7.5 (ASCII/Binary)
- 3D Systems CAD: STL (ASCII/Binary)
- Wavefront: OBJ
- Discreet 3D Studio: 3DS
- GL Transmission: glTF (ASCII/Binary)
- Google Draco: DRC
- RVM (Text/Binary)
- DirectX: X (ASCII/Binary)
- PLY (ASCII/Binary)
- GLTF 2.0 ASCII and Binary formats
- 3MF (3D Manufacturing Format)
Advanced 3D API Features
Create 3D scene & save in supported 3D file formats
Load, save & convert 3D document to a stream
Work with geometry & scene hierarchy
Share mesh geometry data between multiple nodes
Add animation property to 3D scene document
Triangulate a Mesh with custom memory layout of the vertex
Add a target camera to 3D scene
Animate objects in a 3D scene
Split meshes by material
Inter-convert 3D Scene Files
Aspose.3d for Java provides an array of advanced algorithms that makes it an all-in-one solution for 3D file format conversion. The conversion process is as simple as changing the file extension to the desired format. All you need to do is to load the source file in an instance of Scene, and call its Save method with appropriate FileFormat parameter. That's it!
Save 3D scene in different formats - Java
// load the file to be converted Scene scene = new Scene(dir + "template.fbx"); // save in different formats scene.save(dir + "output.stl", FileFormat.STLASCII); scene.save(dir + "output.obj", FileFormat.WAVEFRONTOBJ);
Build Mesh of Various 3D Geometric Shapes
Aspose.3D for Java API help the developers in building mesh of various 3D geometric shapes, define control points and polygons in the simplest way to create 3D meshes. The API also allows to point a mesh to multiple instances of a shape type or place 3D shapes anywhere on a 3D scene.
Setup Normal or UV on the Cube
Aspose.3D for Java API offers to manage Normal (geometry) and UV on the geometric shapes. A mesh stores the key properties for every vertex at its position in space and its normal - a vector perpendicular to the original surface. The normal is major to shading counts. Most of the mesh formats also support some form of UV coordinates which are a separate 2D representation of the mesh "unfolded" to show what portion of a 2-dimensional texture map to apply to different polygons of the mesh.
Generate 3D Scenes & Save as 3D Files
Aspose.3D for Java empowers programmers to easily generate 3D scenes from scratch without needing to install any 3D modeling software. The 3D Java API also enables to save the scenes in any of the supported 3D file formats (FBX, STL, WavefrontOBJ, Discreet3DS, Universal3D and Collada).
Create scene with primitive 3D shapes - Java
// initialize a Scene object Scene scene = new Scene(); // create a Box model scene.getRootNode().createChildNode("box", new Box()); // create a Cylinder model scene.getRootNode().createChildNode("cylinder", new Cylinder()); // save drawing in the FBX format scene.save(dir + "output.fbx", FileFormat.FBX7500ASCII);
Add Node Hierarchy in 3D Scene Document
Aspose.3D for Java API provides the ability to build a Node hierarchy where a Node is the basic building block of a scene. A hierarchy of nodes defines the logical structure of a scene, and provides visible content by attaching geometries, lights and cameras to the nodes.
Share Mesh Geometry Data with Multiple Node
In order to reduce memory necessities, a single instance of Mesh can be bound to various instances of Node. Envision that you require a system where a large number of 3D cubes seemed indistinguishable; you could spare memory by making one Mesh object when the system starts up. At that point, each time you require another shape, you make another Node object, then point that node to one Mesh. This is how Aspose.3D for Java API manages instancing.
Add Animation Property to 3D Scene
Aspose.3D for Java API provides support for key-frame animation via CurveMapping which maps components of a property to different curves. Moreover, Aspose.3D for Java offers to setup the target camera in a 3D file which is useful in animation when you need the camera to face a particular node.
Performance & Scalability
Aspose.3D for Java is designed to perform equally well on the server or client-side. It is a single Java assembly that can be deployed with any Java application by simply adding its reference. You don't have to worry about other services or modules while working with Aspose.3D for Java.
Independent of External Software Installation
Aspose.3D API is built using managed code that never needs any external API or software installation on the machine to work with 3D files. It is perfectly customized solution in terms of supported features, security, stability and price.