Créer une scène 3D en Java

Une scène 3D est un moyen d’afficher des formes 3D sur un ordinateur. Dans ce guide, nous apprendrons comment créer une scène 3D à l’aide de Java sans avoir besoin d’un logiciel 3D spécial. Après cela, nous enregistrerons la scène 3D au format de fichier FBX, qui est un moyen courant de partager des éléments 3D. Alors, commençons.

Les sujets suivants seront abordés dans cet article :

  1. API Java 3D pour créer une scène 3D — téléchargement gratuit
  2. Créer une scène 3D simple en Java
  3. Lire une scène 3D en utilisant Java
  4. Ressources d’apprentissage gratuites

API Java 3D pour créer une scène 3D - Téléchargement gratuit

Nous utiliserons l’API Aspose.3D for Java pour créer et lire une scène 3D. Il s’agit d’une API puissante qui vous permet de créer, d’éditer et d’enregistrer des scènes 3D dans une variété de formats. Il permet de créer et d’éditer des maillages, des matériaux et des textures 3D. L’API permet également d’ajouter et de configurer des lumières, des caméras et des animations.

Veuillez télécharger le JAR de l’API ou ajouter la configuration pom.xml suivante dans une application Java basée sur Maven.

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository> 
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-3d</artifactId>
    <version>23.9.0</version>
</dependency>   

Créer une scène 3D simple à l’aide de Java

Nous pouvons créer une scène 3D simple en suivant les étapes ci-dessous :

  1. Créez une instance de la classe Scene.
  2. Appelez la méthode createChildNode() pour ajouter une géométrie ou une forme à afficher à l’écran, par exemple un cylindre.
  3. Définissez les propriétés du nœud enfant telles que Matériau.
  4. Initialisez un objet de classe Light.
  5. Appelez la méthode createChildNode() pour ajouter une entité Light.
  6. Enfin, enregistrez la scène au format FBX en utilisant la méthode save(). Il prend le chemin du fichier de sortie et FileFormat.FBX7500ASCII comme arguments.

L’exemple de code suivant montre comment créer une scène 3D simple à l’aide de Java.

// Cet exemple de code montre comment créer une scène 3D simple et l'enregistrer dans un fichier FBX.
// Initialiser la scène 3D
Scene scene = new Scene();

// Initialiser l'objet Cylindre
Cylinder cylinder = new Cylinder();
cylinder.setName("Cylinder");

// Créez un nœud enfant et ajoutez un objet Cylindre
Node node = scene.getRootNode().createChildNode(cylinder);

// Définir les propriétés du nœud enfant
LambertMaterial material = new LambertMaterial();
material.setDiffuseColor(null);
material.setName("Lambert");
node.setMaterial(material);

// Ajouter une entité Light
Light light = new Light();
light.setLightType(LightType.POINT);
light.setName("Light");
scene.getRootNode().createChildNode(light).getTransform().setTranslation(new Vector3(10, 0, 10));

// Chemin du fichier de sortie
String output = "C:\\Files\\document.fbx";

// Enregistrer le document de scène 3D
scene.save(output, FileFormat.FBX7500ASCII);
Créer une scène 3D simple à l'aide de Java

Créez une scène 3D simple à l’aide de Java.

Lire une scène 3D en utilisant Java

Nous pouvons également charger un document FBX et lire une scène 3D en suivant les étapes ci-dessous :

  1. Créez une instance de la classe Scene.
  2. Chargez un document 3D existant à l’aide de la méthode open().
  3. Parcourez les propriétés ChildNodes
  4. Enfin, affichez les valeurs des propriétés.

L’exemple de code suivant montre comment charger et lire une scène 3D à l’aide de Java.

// Cet exemple de code montre comment lire une scène 3D à partir d'un fichier FBX
// Initialiser un objet de classe Scene
Scene scene = new Scene();

// Charger un document 3D existant
scene.open("C:\\Files\\document.fbx");

for(Node node : scene.getRootNode().getChildNodes())
{
    Entity entity = node.getEntity();
    System.out.println("Entity Name: " + entity.getName()); 

    if (node.getMaterial() != null)
    {
        Material material = node.getMaterial();
        System.out.println("Material Name: " + material.getName());

        PropertyCollection props = material.getProperties();

        // Répertorier toutes les propriétés en utilisant foreach
        for(Property prop : props)
        {
          System.out.println(prop.getName() + " : " + prop.getValue());
        }
    }
}
Entity Name: Cylinder
Material Name: Lambert
Emissive : (0 0 0)
Diffuse : (1 1 1)
Ambient : (0 0 0)
Entity Name: Light

Obtenez une licence gratuite

Vous pouvez obtenir une licence temporaire gratuite pour essayer Aspose.3D for Java sans limitations d’évaluation.

Ressources d’apprentissage gratuites

En plus de créer ou de lire une simple scène 3D, apprenez-en davantage sur la bibliothèque et explorez diverses autres fonctionnalités à l’aide des ressources ci-dessous :

Conclusion

Dans cet article, nous avons appris à créer une scène 3D en Java. Nous avons également vu comment restituer une scène 3D au format FBX et lire ses notes et propriétés enfants par programmation en Java. En tirant parti d’Aspose.3D for Java, vous pouvez simplifier la programmation graphique 3D dans les applications Java. En cas d’ambiguïté, n’hésitez pas à nous contacter sur notre forum d’assistance gratuit.

Voir également