/* Auteur: Nicolas JANEY */ /* nicolas.janey@univ-fcomte.fr */ /* Novembre 2006 */ public class Segment { public Position pi; public Position pf; public Segment() { pi = new Position(); pf = new Position(); } public Segment(float xi,float yi,float xf,float yf) { pi = new Position(xi,yi); pf = new Position(xf,yf); } public Segment(Position pi,Position pf) { this.pi = new Position(pi); this.pf = new Position(pf); } public Segment(Segment s) { pi = new Position(s.pi); pf = new Position(s.pf); } public float abscisse(float y) { if ( pf.x != pi.x ) { float a = (pf.y-pi.y) / (pf.x-pi.x); float b = pi.y - a*pi.x; return((y-b)/a); } else return(pf.x); } public float ordonnee(float x) { float a = (pf.y-pi.y) / (pf.x-pi.x); float b = pi.y - a*pi.x; return(a*x+b); } public String toString() { return("["+pi+","+pf+"]"); } }