com.imagero.geom
Class Line

java.lang.Object
  extended bycom.imagero.geom.Line
Direct Known Subclasses:
LineSegment

public class Line
extends java.lang.Object

Every line (in 2D) can be represented with formula y = a*x + b (exceptions - horizontal [y=b] and vertical [x = n] lines); Class Line is based on this insight, this makes him very simple and clear.


Constructor Summary
Line(float a, float b)
           
Line(Line l)
           
Line(java.awt.geom.Point2D p1, java.awt.geom.Point2D p2)
           
Line(java.awt.Point p1, java.awt.Point p2)
           
 
Method Summary
 boolean contains(java.awt.Point p)
          determine if given point lies on this line
 boolean contains(java.awt.Point p, double round)
           
 float getX(float y)
          get x coordinate of point on line by given y coordinate
 float getY(float x)
          get y coordinate of point on line by given x coordinate
 java.awt.Point intersection(Line ln)
          get intersection point of this line with another one
 boolean intersects(LineSegment ls)
           
 boolean isOver(java.awt.Point p)
           
 boolean isUnder(java.awt.Point p)
           
 java.awt.Point nearestPoint(java.awt.Point p)
          find nearest point on this Line to supplied Point
 void set(java.awt.Point p1, java.awt.Point p2)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Line

public Line(float a,
            float b)

Line

public Line(Line l)

Line

public Line(java.awt.geom.Point2D p1,
            java.awt.geom.Point2D p2)

Line

public Line(java.awt.Point p1,
            java.awt.Point p2)
Method Detail

contains

public boolean contains(java.awt.Point p)
determine if given point lies on this line

Parameters:
p - Point
Returns:
true if Point p is on this line

contains

public boolean contains(java.awt.Point p,
                        double round)

getX

public float getX(float y)
get x coordinate of point on line by given y coordinate

Parameters:
y - y coordinate
Returns:
x coordinate

getY

public float getY(float x)
get y coordinate of point on line by given x coordinate

Parameters:
x - x coordinate
Returns:

intersection

public final java.awt.Point intersection(Line ln)
get intersection point of this line with another one

Parameters:
ln - another line
Returns:
Point

intersects

public boolean intersects(LineSegment ls)

isOver

public boolean isOver(java.awt.Point p)

isUnder

public boolean isUnder(java.awt.Point p)

nearestPoint

public java.awt.Point nearestPoint(java.awt.Point p)
find nearest point on this Line to supplied Point

Parameters:
p - Point
Returns:
nearest Point

set

public void set(java.awt.Point p1,
                java.awt.Point p2)