Revision 2319

View differences:

org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.util/org.gvsig.tools.util.api/src/main/java/org/gvsig/euclidean/EuclideanManager.java
17 17

  
18 18
    EuclideanLine2D createLine2D(double m, double b);
19 19

  
20
    EuclideanLine2D createLine2D(double m, Point2D p);
21

  
22
    double getYIntercept(double m, Point2D p);
23

  
24
    double getYIntercept(double m, double x, double y);
25

  
20 26
    EuclideanLine2D createLine2D(double x0, double y0, double x1, double y1);
21 27

  
22 28
    EuclideanLine2D createLine2D(Point2D p1, Point2D p2);
org.gvsig.tools/library/trunk/org.gvsig.tools/org.gvsig.tools.util/org.gvsig.tools.util.impl/src/main/java/org/gvsig/euclidean/DefaultEuclideanManager.java
32 32
    public EuclideanLine2D createLine2D(Point2D p1, Point2D p2) {
33 33
        return new EuclideanLine2DImpl(p2, p1);
34 34
    }
35

  
36
    @Override
37
    public EuclideanLine2D createLine2D(double m, Point2D p) {
38
        if(Double.isInfinite(m)){
39
            return new EuclideanLine2DImpl(1, 0, -p.getX());
40
        }
41
        return new EuclideanLine2DImpl(m, getYIntercept(m, p));
42
    }
43

  
44
    @Override
45
    public double getYIntercept(double m, Point2D p) {
46
        return getYIntercept(m, p.getX(), p.getY());
47
    }
48

  
49
    @Override
50
    public double getYIntercept(double m, double x, double y) {
51
        return -m*x+y;
52
    }
35 53
    
54
    
55
    
56
    
36 57
}

Also available in: Unified diff