3D Conversão de formatos por meio de Java

Converta formatos de arquivo 3D sem qualquer instalação de software de modelagem e renderização de 3D para criar aplicativos de plataforma cruzada Java.

 

Para criar, editar, manipular e salvar aplicativos gráficos tridimensionais, o Java 3D API fornece métodos de alto nível para fazer esses recursos sem a instalação de nenhum 3D software de modelagem e renderização. Poucos são construir a malha de diferentes formas geométricas tridimensionais, criar um arquivo de cena 3D, configurar normais ou UV no cubo, formatar elementos, adicionar propriedades de animação e muito mais.

Converter arquivo 3D para diferentes formatos

O processo de conversão é simples. Basta carregar o arquivo 3D de origem usando Aula de cena Como a cena é um objeto de nível superior com nós, geometrias, texturas, materiais, animação, poses, sub-cenas etc. Salvar opções como AmfSaveOptions, ColladaSaveOptions, Discreet3dsSaveOptions, DracoSaveOptions, FbxSaveOptions, GltfSaveOptions, RvmSaveOptions, StlSaveOptions, U3dSaveOptions etc e defina as propriedades de acordo. Por fim, chame o método save com o arquivo de saída e o objeto de opções de salvamento do formato de destino criado. Além disso, usando os programadores API podem até salvar a cena 3D como HTML.

Java Código para conversão de AMF em 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);
Converta 3D Cena para 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);