Je veux obtenir l'effet d'une image 2D que j'ai mais un peu inclinée, par exemple un plan, je veux que l'image puisse être tournée autour de son axe Y. .. n'importe qui peut m'aider avec une idée de comment faire. . **comment puis-je faire pour une image 2D et tourner autour de son axe X, Y, ou Z comme s'il s'agissait d'une image 3D.in java?
Répondre
Fondamentalement, vous avez besoin d'un peu de géométrie/algèbre linéaire, et/ou un paquet pour les faire pour vous. Du point de vue de la géométrie, vous pensez à l'image comme si elle se trouvait sur un plan dans l'espace; vous le regardez comme s'il était projeté en arrière sur votre moniteur. Si l'image est exactement parallèle à cet écran et de la même taille, chaque point est mappé à un pixel sur l'écran. Sinon, vous devez passer par un calcul qui fait ce mapping, ce qui implique une fonction trig pour les angles dans les directions x, y, z entre ce plan et le plan de l'écran. L'algèbre linéaire vient parce que la façon simple de gérer ce calcul est une série de multiplications de 4 matrices. Maintenant, vous pouvez programmer tout cela vous-même, et pour ce que vous en pensez, ce ne serait pas si difficile. Voir tout bon texte graphique d'ordinateur, comme Shirley, ou Foley and van Damm.
En ce qui concerne un paquet, il y a de bons graphismes 3D en Java. Mieux encore, il existe de bons tutoriels:
- The Java3D tutorial at Sun.
- la substance à j3d.org
- toute une liste d'entre eux à java3d.org
Dans quel contexte? Utiliser une API 3D comme OpenGL à travers JOGL me semble être le moyen le plus simple d'y parvenir. Sinon, si l'angle est variable, vous aurez besoin d'une forme de logiciel de rendu.