3D Conversion de formats via Java

Convertissez les formats de fichiers 3D sans aucune installation de logiciel de modélisation et de rendu 3D pour créer des applications multiplateformes Java.

 

Pour la création, l’édition, la manipulation et l’enregistrement d’applications graphiques en trois dimensions, Java 3D API fournit des méthodes de haut niveau pour réaliser de telles fonctionnalités sans l’installation d’aucun 3D logiciel de modélisation et de rendu. Rares sont ceux qui construisent le maillage de différentes formes géométriques tridimensionnelles, créent un fichier de scène 3D, configurent des normales ou des UV sur le cube, formatent des éléments, ajoutent des propriétés d’animation, etc.

Convertir 3D fichier en différents formats

Le processus de conversion est simple. Chargez simplement le fichier source 3D en utilisant Classe de scène Comme la scène est un objet de niveau supérieur ayant les nœuds, les géométries, les textures, les matériaux, l’animation, les poses, les sous-scènes, etc. Enregistrer les options tels que AmfSaveOptions, ColladaSaveOptions, Discreet3dsSaveOptions, DracoSaveOptions, FbxSaveOptions, GltfSaveOptions, RvmSaveOptions, StlSaveOptions, U3dSaveOptions, etc. et définissez les propriétés en conséquence. Enfin, appelez la méthode save avec le fichier de sortie et l’objet d’options de sauvegarde du format cible créé. De plus, l’utilisation des programmeurs API peut même enregistrer la scène 3D sous HTML.

Java Code pour la conversion AMF à 3DS
// load the AMF in an object of Scene
Scene amfto3ds = new Scene("template.amf");
// create an instance of 3dsSaveOptions
Discreet3dsSaveOptions options = new Discreet3dsSaveOptions();
// save AMF as a 3DS
amfto3ds.save("output.3ds", options);
Convertir 3D Scène en HTML via Java
// For complete examples and data files, please go to https://github.com/aspose-3d/Aspose.3D-for-Java
// Initialize a scene
Scene scene = new Scene();
// Initialize a node
Node node = scene.getRootNode().createChildNode(new Cylinder());
// Set child node properites
LambertMaterial mat = new LambertMaterial();
mat.setDiffuseColor(new Vector3(0.34,0.59, 0.41));
node.setMaterial(mat);
Light light = new Light();
light.setLightType(LightType.POINT);
scene.getRootNode().createChildNode(light).getTransform().setTranslation(10, 0, 10);
// Initialize HTML5SaveOptions
HTML5SaveOptions opt = new HTML5SaveOptions();
// Turn off the grid
opt.setShowGrid(false);
//Turn off the user interface
opt.setShowUI(false);
scene.save(RunExamples.getDataDir() + "html5SaveOption.html", FileFormat.HTML5);