Package com.reportmill.graphics
Class RMLine
- java.lang.Object
-
- com.reportmill.base.RMObject
-
- com.reportmill.graphics.RMLine
-
- All Implemented Interfaces:
RMArchiver.Archiving
,java.lang.Cloneable
- Direct Known Subclasses:
RMQuadratic
public class RMLine extends RMObject
This class models a simple line, providing methods for extracting points, distance calculation, bisection, hit detection and such.
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description double
getDistanceLine(RMPoint aPoint)
Returns the minimum distance from the given point to this line.static double
getDistanceToLineSquared(double p0x, double p0y, double p1x, double p1y, double p2x, double p2y)
Returns the distance from the given point components (p0) to the given line components (p1->p2).RMLine
getHead(double t)
Returns a new line from this line's start point to given parametric location t (defined from 0-1) on this line.RMHitInfo
getHitInfo(RMBezier aBezier)
Returns a hit info object for this line and the given bezier.RMHitInfo
getHitInfo(RMLine aLine)
Returns a hit info object for this line and the given line.RMHitInfo
getHitInfo(RMQuadratic aCurve)
Returns a hit info object for this line and the given bezier curve.float
getMaxX()
Returns the max x point of this line.float
getMaxY()
Returns the max y point of this line.float
getMinX()
Returns the min x point of this line.float
getMinY()
Returns the min y point of this line.RMPoint
getPoint(double t)
Returns the point on this line at the parametric location t (defined from 0-1).RMLine
getTail(double t)
Returns a new line from given parametric location t (defined from 0-1) on this line to this line's end point.void
setEnd(double t)
Reset this curve's end point to the given parametric location (0-1).void
setStart(double t)
Reset this curve's start point to the given parametric location (0-1).java.lang.String
toString()
Returns a string representation of this line.-
Methods inherited from class com.reportmill.base.RMObject
clone, copy, didChange, didUndo, getAnimAttribute, getClassNameShort, initWithArchiver, undoClone, undoCopy, undoEquals
-
-
-
-
Method Detail
-
getPoint
public RMPoint getPoint(double t)
Returns the point on this line at the parametric location t (defined from 0-1).
-
getDistanceLine
public double getDistanceLine(RMPoint aPoint)
Returns the minimum distance from the given point to this line.
-
getDistanceToLineSquared
public static double getDistanceToLineSquared(double p0x, double p0y, double p1x, double p1y, double p2x, double p2y)
Returns the distance from the given point components (p0) to the given line components (p1->p2).
-
getMinX
public float getMinX()
Returns the min x point of this line.
-
getMinY
public float getMinY()
Returns the min y point of this line.
-
getMaxX
public float getMaxX()
Returns the max x point of this line.
-
getMaxY
public float getMaxY()
Returns the max y point of this line.
-
getHead
public RMLine getHead(double t)
Returns a new line from this line's start point to given parametric location t (defined from 0-1) on this line.
-
getTail
public RMLine getTail(double t)
Returns a new line from given parametric location t (defined from 0-1) on this line to this line's end point.
-
setEnd
public void setEnd(double t)
Reset this curve's end point to the given parametric location (0-1).
-
setStart
public void setStart(double t)
Reset this curve's start point to the given parametric location (0-1).
-
getHitInfo
public RMHitInfo getHitInfo(RMLine aLine)
Returns a hit info object for this line and the given line.
-
getHitInfo
public RMHitInfo getHitInfo(RMQuadratic aCurve)
Returns a hit info object for this line and the given bezier curve. HitInfo._index is overloaded to contain number of hits.
-
getHitInfo
public RMHitInfo getHitInfo(RMBezier aBezier)
Returns a hit info object for this line and the given bezier.
-
toString
public java.lang.String toString()
Returns a string representation of this line.- Overrides:
toString
in classjava.lang.Object
-
-