Accueil Finances personnelles Exemple de programmation javaFX: 3D Box - mannequins

Exemple de programmation javaFX: 3D Box - mannequins

Table des matières:

Vidéo: Cool 2D and 3D graphics with JavaFX 2024

Vidéo: Cool 2D and 3D graphics with JavaFX 2024
Anonim

JavaFX supporte la modélisation 3D réaliste. En fait, le graphe de scène JavaFX est de nature tridimensionnelle. La plupart des programmes JavaFX fonctionnent en deux dimensions, spécifiant seulement les coordonnées x et y. Mais tout ce que vous avez à faire pour entrer dans la troisième dimension est de spécifier les coordonnées z pour placer les nœuds de votre scène dans un espace tridimensionnel.

JavaFX comprend un riche ensemble de classes dédiées à la création et à la visualisation d'objets 3D dans les mondes 3D. Vous pouvez créer des formes tridimensionnelles, telles que des cubes et des cylindres. Vous pouvez déplacer la caméra virtuelle dans l'espace 3D pour regarder vos objets 3D sous différents angles et différentes perspectives.

Et vous pouvez même ajouter des sources d'éclairage pour contrôler soigneusement l'apparence finale de vos mondes virtuels. En résumé, JavaFX est capable de produire des scènes 3D étonnantes.

Ajouter une boîte 3D à votre monde Java

Dans cette étape, ajoutez un objet au monde 3D: dans ce cas, une boîte, représentée par la classe Box. Voici le code:

Box box = new Box (100, 100, 100); boîte. setMaterial (blueStuff); boîte. setTranslateX (150); boîte. setTranslateY (-100); boîte. setTranslateZ (-100); racine. getChildren (). ajouter (boîte);

Le constructeur Box accepte trois arguments représentant la largeur, la hauteur et la profondeur de la boîte. Dans cet exemple, tous les trois sont mis à 100. Ainsi, la boîte sera dessinée comme un cube avec chaque côté mesurant 100 unités.

La boîte reçoit le même matériau que le cylindre; Ensuite, il est traduit sur les trois axes afin que vous puissiez avoir une vue en perspective de la boîte. La figure montre comment la boîte apparaît lors du rendu. Comme vous pouvez le voir, les faces gauche et inférieure de la boîte sont visibles parce que vous avez traduit la position de la boîte vers le haut et vers la droite pour que la caméra puisse prendre du recul.

Rotation de la boîte 3D

Dans cette étape, faites pivoter la boîte pour créer une vue en perspective encore plus intéressante. Il existe deux façons de faire pivoter un objet 3D. Le plus simple est d'appeler la méthode setRotate de l'objet et de fournir un angle de rotation:

. setRotate (25);

Par défaut, cela fera tourner l'objet sur son axe z. Si cela est difficile à visualiser, imaginez que vous inclinez l'objet avec un long manche parallèle à l'axe z. Ensuite, faites tourner l'objet sur la brochette.

Si vous voulez faire pivoter l'objet le long d'un axe différent, appelez d'abord setRotationAxis. Par exemple, pour faire tourner l'objet sur son axe x, utilisez cette séquence:

. setRotationAxis (Rotation.X_AXIS); boîte. setRotate (25);

Imaginez que vous faites passer la brochette à travers la boîte avec la brochette parallèle à l'axe des x, puis faites tourner la boîte de 25 degrés.

Le seul problème avec l'utilisation de la méthode setRotate pour faire pivoter un objet 3D est qu'il ne fonctionne que sur un axe à la fois. Par exemple, supposons que vous souhaitiez faire pivoter la boîte de 25 degrés sur les axes z et x. Le code suivant ne sera pas accomplir ceci:

boîte. setRotationAxis (Rotation.X_AXIS); boîte. setRotate (25); boîte. setRotationAxis (Rotate. Z_AXIS); boîte. setRotate (25);

Lorsque la méthode setRotate est appelée la deuxième fois pour faire pivoter la boîte sur l'axe z, la rotation de l'axe des x est réinitialisée.

Pour effectuer une rotation sur plusieurs axes, vous devez utiliser la classe Rotation à la place. Vous créez une instance Rotate distincte pour chaque axe sur lequel vous souhaitez faire pivoter l'objet, puis ajoutez toutes les occurrences Rotate à la collection Transforms de l'objet via getTransforms (). Méthode addAll, comme ceci:

Rotate rxBox = new Rotate (0, 0, 0, 0, Rotation, X_AXIS); Rotate ryBox = new Rotate (0, 0, 0, 0, Rotation, Y_AXIS); Tournez rzBox = new Rotate (0, 0, 0, 0, Rotation, Z_AXIS); rxBox. setAngle (30); ryBox. setAngle (50); rzBox. setAngle (30); boîte. getTransforms (). addAll (rxBox, ryBox, rzBox);

Le constructeur Rotate accepte quatre paramètres. Les trois premiers sont les coordonnées x, y et z du point dans l'objet à travers lequel l'axe de rotation passera. Généralement, vous spécifiez des zéros pour ces paramètres afin de faire pivoter l'objet autour de son point central. Le quatrième paramètre spécifie l'axe de rotation.

Cette figure montre comment la boîte apparaît après la rotation.

La boîte après la rotation.

Exemple de programmation javaFX: 3D Box - mannequins

Le choix des éditeurs

Résolution des conflits de ressources humaines avec Microsoft Office Project 2007 - dummies

Résolution des conflits de ressources humaines avec Microsoft Office Project 2007 - dummies

Lorsqu'un membre de l'équipe de projet est suropposée dans votre projet Microsoft Office Project 2007, vous pouvez prendre des mesures pour corriger le problème en utilisant les suggestions suivantes. Gardez à l'esprit que les circonstances de votre projet déterminent si une solution particulière est réalisable. Par exemple, vous pouvez ajouter des ressources uniquement si votre budget le permet ...

Comment enregistrer plusieurs lignes de base dans Project 2013 - mannequins

Comment enregistrer plusieurs lignes de base dans Project 2013 - mannequins

Le concept de lignes de base multiples semble presque contraire définition d'une ligne de base. Après tout, le but d'une base de référence est de mettre l'enjeu proverbial dans le sable et de mesurer les progrès contre elle. Vous pouvez conserver plusieurs lignes de base dans Project 2013 à plusieurs fins. Considérez ces raisons: Vous avez un plan de base pour ...

Comment enregistrer une référence dans Project 2013 - mannequins

Comment enregistrer une référence dans Project 2013 - mannequins

Vous pouvez enregistrer une référence à tout moment en ouvrant la boîte de dialogue Définir la ligne de base dans Project 2013. Un paramètre - qui contrôle la manière dont le projet regroupe les données dans les tâches récapitulatives lorsque vous définissez une ligne de base pour une partie des tâches - nécessite une explication. Après avoir enregistré une base de données la première fois dans Project 2013, ...

Le choix des éditeurs

Comment classer les modèles d'analyse prédictive - mannequins

Comment classer les modèles d'analyse prédictive - mannequins

Vous avez plusieurs façons de classer les modèles utilisés pour l'analyse prédictive. En général, vous pouvez les trier en fonction des problèmes métier qu'ils résolvent et des principales fonctions métier qu'ils servent (ventes, publicité, ressources humaines ou gestion des risques, par exemple). L'implémentation mathématique utilisée dans le modèle (comme les statistiques, l'exploration de données et la machine ...

Comment appliquer n'importe quelle grappe de colonies dans l'analyse prédictive - les nuls

Comment appliquer n'importe quelle grappe de colonies dans l'analyse prédictive - les nuls

Un exemple naturel de groupe auto-organisateur vous pouvez appliquer dans le comportement d'analyse prédictive est une colonie de fourmis à la recherche de nourriture. Les fourmis optimisent collectivement leur trajectoire de manière à prendre toujours le chemin le plus court possible vers une cible alimentaire. Même si vous essayez de déranger une colonie de fourmis et de les empêcher de ...

Comment choisir un algorithme pour un modèle d'analyse prédictive - mannequins

Comment choisir un algorithme pour un modèle d'analyse prédictive - mannequins

Diverses statistiques, data-mining et des algorithmes d'apprentissage automatique sont disponibles pour votre modèle d'analyse prédictive. Vous êtes dans une meilleure position pour sélectionner un algorithme après avoir défini les objectifs de votre modèle et sélectionné les données sur lesquelles vous allez travailler. Certains de ces algorithmes ont été développés pour résoudre des problèmes métier spécifiques, améliorer des algorithmes existants ou fournir ...

Le choix des éditeurs

Excel Tableaux de bord et rapports: La fonction VLOOKUP - les nuls

Excel Tableaux de bord et rapports: La fonction VLOOKUP - les nuls

Ne vous feront rien tout bien si vous ne pouvez pas gérer efficacement vos modèles de données. La fonction VLOOKUP est le roi de toutes les fonctions de recherche dans Excel. Le but de VLOOKUP est de trouver une valeur spécifique à partir d'une colonne de données où la valeur de ligne la plus à gauche correspond à un critère donné. Prenez ...

Excel Outils d'analyse de données - dummies

Excel Outils d'analyse de données - dummies

L'outil d'analyse d'excel est un complément utile qui fournit un ensemble complet d'outils d'analyse statistique . Voici quelques outils dans le ToolPak. Outil Analyse Anova: Facteur unique Analyse de variance pour deux échantillons ou plus Anova: Facteur double avec réplication Analyse de la variance avec deux variables indépendantes et observations multiples ...

Excelent Touches de raccourci d'entrée de données - mannequins

Excelent Touches de raccourci d'entrée de données - mannequins

Lorsque vous travaillez dans Excel et saisissez des données dans une cellule, il est essentiel pour compléter l'entrée soit en cliquant sur une autre cellule avec le pointeur de la souris ou en utilisant l'une des touches de raccourci pratiques montrées ici pour déplacer le curseur de la cellule: Appuyez sur les touches To Arrow (& uarr;, & darr; move ...