/* Segment de droite en 2D                      */
/*                                              */
/* Auteur: Nicolas JANEY                        */
/* nicolas.janey@univ-fcomte.fr                 */
/* Novembre 2012                                */

#include <stdlib.h>
#include <stdio.h>
#include <math.h>

#include "Segment2D.h"
#include "Position2D.h"
#include "TraceSegment.h"
#include "Rectangle2D.h"

/* Constructeurs                                */

Segment2D::Segment2D(void) {
  p1 = new Position2D();
  p2 = new Position2D();
}

Segment2D::Segment2D(Position2D *p1,Position2D *p2) {
  this->p1 = new Position2D(p1);
  this->p2 = new Position2D(p2);
}

Segment2D::Segment2D(Segment2D *s) {
  p1 = new Position2D(s->p1);
  p2 = new Position2D(s->p2);
}

/* Destructeur                                  */

Segment2D::~Segment2D(void) {
  delete(p1);
  delete(p2);
}

/* Dessin OpenGL                                */

void Segment2D::draw(void) {
  trace(p1,p2);
}

//////////////////////////////////////////////////

/* Abscisse correspondant a une ordonnee        */

double Segment2D::abscisse(double ordonnee) {

}

/* Ordonnee correspondant a une abscisse        */

double Segment2D::ordonnee(double abscisse) {

}

/* Clipping de Cohen-Sutherland                 */
int Segment2D::clip(Rectangle2D *r){

}

//////////////////////////////////////////////////
