//  Objectif : Implantation de la classe SegmentPointeur

#include "SegmentPointeur.h"

SegmentPointeur :: SegmentPointeur(Point &p1, Point &p2)
{
    _e1 = &p1;
    _e2 = &p2;
}

const Point & SegmentPointeur :: e1() const
{
    return *_e1;
}

const Point & SegmentPointeur :: e2() const
{
    return *_e2;
}

double SegmentPointeur :: longueur() const
{
    return e1().distance(e2());
}

void SegmentPointeur :: translater(double dx, double dy)
{
    _e1->translater(dx, dy);
    _e2->translater(dx, dy);
}

void SegmentPointeur :: afficher(std::ostream &out) const
{
    out << "[" << e1() << " ; " << e2() << "]";
}

SegmentPointeur :: ~SegmentPointeur()
{
    std::cerr << "**** DESTRUCTEUR " << "SegmentPointeur :: ~SegmentPointeur() // " << *this
	    << " @ " << this << std::endl;
}
