org.apache.commons.math3.geometry.euclidean.twod
Class Segment

java.lang.Object
  extended by org.apache.commons.math3.geometry.euclidean.twod.Segment

public class Segment
extends Object

Simple container for a two-points segment.

Since:
3.0
Version:
$Id: Segment.java 1422195 2012-12-15 06:45:18Z psteitz $

Constructor Summary
Segment(Vector2D start, Vector2D end, Line line)
          Build a segment.
 
Method Summary
 double distance(Vector2D p)
          Calculates the shortest distance from a point to this line segment.
 Vector2D getEnd()
          Get the end point of the segment.
 Line getLine()
          Get the line containing the segment.
 Vector2D getStart()
          Get the start point of the segment.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Segment

public Segment(Vector2D start,
               Vector2D end,
               Line line)
Build a segment.

Parameters:
start - start point of the segment
end - end point of the segment
line - line containing the segment
Method Detail

getStart

public Vector2D getStart()
Get the start point of the segment.

Returns:
start point of the segment

getEnd

public Vector2D getEnd()
Get the end point of the segment.

Returns:
end point of the segment

getLine

public Line getLine()
Get the line containing the segment.

Returns:
line containing the segment

distance

public double distance(Vector2D p)
Calculates the shortest distance from a point to this line segment.

If the perpendicular extension from the point to the line does not cross in the bounds of the line segment, the shortest distance to the two end points will be returned.

Algorithm adapted from: Thread @ Codeguru

Parameters:
p - to check
Returns:
distance between the instance and the point
Since:
3.1


Copyright © 2003-2012 The Apache Software Foundation. All Rights Reserved.