/* Mathematiques de l'informatique graphique    */
/* Direction en 2D                              */
/*                                              */
/* Auteur: Nicolas JANEY                        */
/* nicolas.janey@univ-fcomte.fr                 */
/* Octobre 2012                                 */

#ifndef ____DIRECTION2D____
#define ____DIRECTION2D____

class Position2D;

#include "CoordonneesHomogenes2D.h"

class Direction2D : public CoordonneesHomogenes2D {

  public :

    /* Constructeurs                            */
    Direction2D(void);
    Direction2D(double x,double y);
    Direction2D(Direction2D *c);
    Direction2D(Position2D *p1,Position2D *p2);

    /* Destructeur                              */
    ~Direction2D(void);

    /* Methode de calcul de la norme            */
    double norme(void);

    /* Methode de normalisation                 */
    double normalisation(void);

    /* Methode de calcul du produit scalaire    */
    /* de deux directions                       */
    double produitScalaire(Direction2D *d);
};

#endif
