2010-03-15 6 views
3

Je lis sur les mathématiques dans les jeux et je me demande quelle est la meilleure façon de représenter un emplacement de vecteur dans Java.Vecteurs pour un monde 2D/3D en Java

Je sais qu'il existe une classe Vector mais je ne pense pas que ce soit ce dont j'ai besoin.

Il existe également une classe Matrix qui ressemble peut-être à ce que je veux (une matrice 1 dimensionnelle peut-être).

En particulier, si je devais créer un vecteur de localisation tels que:

v (x, y, z) où x, y et z sont les coordonnées dans l'espace 3D, quelle serait la meilleure façon de représente ceci en Java. Ce serait bien si je pouvais aussi ajouter, soustraire et trouver le point-produit de vecteurs.

idées?

Répondre

1

peut-être vous pourriez créer une classe 3DVector

exemple:

class 3DVector { 
    int x , y, z; 

    public 3DVector(int x, int y, int z){ 
     //constructor 
    } 


    public 3DVector add(3DVector anotherVector){ 

    } 

    public 3DVector subtract().... 

    public 3DVector doProduct()..... 
} 
0

Il y a une bibliothèque mathématique là-bas, mais une classe simple avec 3 nombres à virgule flottante est ce que tout le monde utilise

+0

Il semble juste que ce serait une tâche si commune que la bibliothèque Java offrirait une classe optimisée par défaut. – jax

+0

probablement pas aussi commun que vous le pensez :-) – radai

1

Il est une bibliothèque pour cela, Voir:
javax.vecmath.Vector3d