Uses of Class
org.djutils.draw.DrawRuntimeException

Packages that use DrawRuntimeException
Package
Description
The draw package contains the generic classes for device-independent drawing.
The d1 package provides an interface and different implementations for lines.
The d0 package provides a set of interfaces and implementations of Points.
The d1 package provides an interface and different implementations for Areas.
  • Uses of DrawRuntimeException in org.djutils.draw

    Modifier and Type
    Class
    Description
    class 
    DegenerateLineException is a special type of DrawRuntimeException, that is thrown if a line or line segment is constructed or simplified to less than two points.
    class 
    InternalCalculationException is a special type of DrawRuntimeException, that is thrown if a method fails during the construction of a drawable object or during the calculation of a property of a drawable object.
    class 
    InvalidProjectionException is a special type of DrawRuntimeException, that is thrown if a projection results in an invalid object, or if a projection cannot be carried out.
  • Uses of DrawRuntimeException in org.djutils.draw.line

    Modifier and Type
    Method
    Description
    static PolyLine2d
    Bezier.bezier(double epsilon, Point2d... points)
    Approximate a Bézier curve of degree n with a specified precision.
    static PolyLine3d
    Bezier.bezier(double epsilon, Point3d... points)
    Approximate a Bézier curve of degree n with a specified precision.
    static PolyLine2d
    Bezier.bezier(int size, Point2d... points)
    Approximate a Bézier curve of degree n.
    static PolyLine3d
    Bezier.bezier(int size, Point3d... points)
    Construct a Bézier curve of degree n.
    static PolyLine2d
    Bezier.bezier(Point2d... points)
    Approximate a Bézier curve of degree n using DEFAULT_BEZIER_SIZE points.
    static PolyLine3d
    Bezier.bezier(Point3d... points)
    Approximate a Bézier curve of degree n using DEFAULT_BEZIER_SIZE points.
    static PolyLine2d
    PolyLine2d.concatenate(double tolerance, PolyLine2d... lines)
    Concatenate several PolyLine2d instances.
    static PolyLine2d
    PolyLine2d.concatenate(double tolerance, PolyLine2d line1, PolyLine2d line2)
    Concatenate two PolyLine2d instances.
    static PolyLine2d
    PolyLine2d.concatenate(PolyLine2d... lines)
    Concatenate several PolyLine2d instances.
    static PolyLine3d
    PolyLine3d.concatenate(double tolerance, PolyLine3d... lines)
    Concatenate several PolyLine3d instances.
    static PolyLine3d
    PolyLine3d.concatenate(double tolerance, PolyLine3d line1, PolyLine3d line2)
    Concatenate two PolyLine3d instances.
    static PolyLine3d
    PolyLine3d.concatenate(PolyLine3d... lines)
    Concatenate several PolyLine3d instances.
    static Polygon2d
    ConvexHull.convexHullAlshamrani(List<Point2d> list)
    Implementation of the convex hull algorithm by Reham Alshamrani c.s.; see A Preprocessing Technique for Fast Convex Hull Computation.
    static Polygon2d
    ConvexHull.convexHullMonotone(List<Point2d> list)
    Implementation of Andrew's Monotone Chain convex hull algorithm.
    static PolyLine2d
    Bezier.cubic(double epsilon, Ray2d start, Ray2d end)
    Approximate a cubic Bézier curve from start to end with two generated control points at half the distance between start and end with specified precision.
    static PolyLine2d
    Bezier.cubic(double epsilon, Ray2d start, Ray2d end, double shape)
    Approximate a cubic Bézier curve from start to end with two generated control points at half the distance between start and end with specified precision.
    static PolyLine2d
    Bezier.cubic(double epsilon, Ray2d start, Ray2d end, double shape, boolean weighted)
    Approximate a cubic Bézier curve from start to end with two generated control points at half the distance between start and end with specified precision.
    static PolyLine3d
    Bezier.cubic(double epsilon, Ray3d start, Ray3d end)
    Approximate a cubic Bézier curve from start to end with two generated control points at half the distance between start and end with specified precision.
    static PolyLine3d
    Bezier.cubic(double epsilon, Ray3d start, Ray3d end, double shape)
    Approximate a cubic Bézier curve from start to end with two generated control points at half the distance between start and end with specified precision.
    static PolyLine3d
    Bezier.cubic(double epsilon, Ray3d start, Ray3d end, double shape, boolean weighted)
    Approximate a cubic Bézier curve from start to end with two generated control points at half the distance between start and end with specified precision.
    static PolyLine2d
    Bezier.cubic(double epsilon, Point2d start, Point2d control1, Point2d control2, Point2d end)
    Approximate a cubic Bézier curve from start to end with two control points with a specified precision.
    static PolyLine3d
    Bezier.cubic(double epsilon, Point3d start, Point3d control1, Point3d control2, Point3d end)
    Approximate a cubic Bézier curve from start to end with two control points with a specified precision.
    static PolyLine2d
    Bezier.cubic(int size, Ray2d start, Ray2d end)
    Approximate a cubic Bézier curve from start to end with two generated control points at half the distance between start and end.
    static PolyLine2d
    Bezier.cubic(int size, Ray2d start, Ray2d end, double shape)
    Approximate a cubic Bézier curve from start to end with two generated control points at half the distance between start and end.
    static PolyLine2d
    Bezier.cubic(int size, Ray2d start, Ray2d end, double shape, boolean weighted)
    Approximate a cubic Bézier curve from start to end with two generated control points at half the distance between start and end.
    static PolyLine3d
    Bezier.cubic(int size, Ray3d start, Ray3d end)
    Approximate a cubic Bézier curve from start to end with two generated control points at half the distance between start and end.
    static PolyLine3d
    Bezier.cubic(int size, Ray3d start, Ray3d end, double shape)
    Approximate a cubic Bézier curve from start to end with two generated control points at half the distance between start and end.
    static PolyLine3d
    Bezier.cubic(int size, Ray3d start, Ray3d end, double shape, boolean weighted)
    Approximate a cubic Bézier curve from start to end with two generated control points at half the distance between start and end.
    static PolyLine2d
    Bezier.cubic(int size, Point2d start, Point2d control1, Point2d control2, Point2d end)
    Approximate a cubic Bézier curve from start to end with two control points.
    static PolyLine3d
    Bezier.cubic(int size, Point3d start, Point3d control1, Point3d control2, Point3d end)
    Approximate a cubic Bézier curve from start to end with two control points.
    static PolyLine2d
    Bezier.cubic(Ray2d start, Ray2d end)
    Approximate a cubic Bézier curve from start to end with two generated control points at half the distance between start and end.
    static PolyLine3d
    Bezier.cubic(Ray3d start, Ray3d end)
    Construct a cubic Bézier curve from start to end with two generated control points at half the distance between start and end.
    PolyLine.extract(double start, double end)
    Create a new PolyLine that covers a sub-section of this PolyLine.
    PolyLine2d.extract(double start, double end)
     
    PolyLine3d.extract(double start, double end)
     
    default L
    PolyLine.extractFractional(double start, double end)
    Construct a new PolyLine covering the indicated fraction of this PolyLine.
    default int
    PolyLine.find(double pos)
    Binary search for a point index on this PolyLine that is at, or the the nearest one before a given position.
    default D
    LineSegment.getLocation(double position)
    Create a DirectedPoint at the specified position along this LineSegment.
    PolyLine.getLocation(double position)
    Get the location at a position on the line, with its direction.
    PolyLine2d.getLocation(double position)
     
    PolyLine3d.getLocation(double position)
     
    default R
    Ray.getLocation(double position)
    Get the location at a position on the line, with its direction.
    LineSegment.getLocationExtended(double position)
    Create a DirectedPoint at the specified position along this LineSegment.
    LineSegment2d.getLocationExtended(double position)
     
    LineSegment3d.getLocationExtended(double position)
     
    Ray.getLocationExtended(double position)
    Get the location at a position on the line, with its direction.
    Ray2d.getLocationExtended(double position)
     
    Ray3d.getLocationExtended(double position)
     
    default D
    PolyLine.getLocationFraction(double fraction)
    Get the location at a fraction of the line, with its direction.
    default D
    PolyLine.getLocationFraction(double fraction, double tolerance)
    Get the location at a fraction of the line, with its direction.
    PolyLine.instantiate(List<P> pointList)
    Constructor that can be accessed as a method (used to implement default methods in this interface).
    PolyLine2d.instantiate(List<Point2d> pointList)
     
    PolyLine3d.instantiate(List<Point3d> pointList)
     
    default L
    PolyLine.offsetLine(double offset)
    Construct an offset PolyLine.
    default L
    PolyLine.offsetLine(double offsetAtStart, double offsetAtEnd)
    Construct an offset line.
    PolyLine.offsetLine(double offset, double circlePrecision, double offsetMinimumFilterValue, double offsetMaximumFilterValue, double offsetFilterRatio, double minimumOffset)
    Construct an offset line.
    PolyLine.offsetLine(double offsetAtStart, double offsetAtEnd, double circlePrecision, double offsetMinimumFilterValue, double offsetMaximumFilterValue, double offsetFilterRatio, double minimumOffset)
    Construct an offset line.
    PolyLine2d.offsetLine(double offsetAtStart, double offsetAtEnd, double circlePrecision, double offsetMinimumFilterValue, double offsetMaximumFilterValue, double offsetFilterRatio, double minimumOffset)
     
    LineSegment3d.project()
     
    Polygon3d.project()
     
    PolyLine3d.project()
     
    PolyLine.transitionLine(L endLine, PolyLine.TransitionFunction transition)
    Make a transition line from this PolyLine to another PolyLine using a user specified function.
    PolyLine2d.transitionLine(PolyLine2d endLine, PolyLine.TransitionFunction transition)
     
    PolyLine3d.transitionLine(PolyLine3d endLine, PolyLine.TransitionFunction transition)
     
    PolyLine.truncate(double position)
    Truncate this PolyLine at the given length (less than the length of the line, and larger than zero) and return a new line.
    PolyLine2d.truncate(double position)
     
    PolyLine3d.truncate(double position)
     
    Constructors in org.djutils.draw.line that throw DrawRuntimeException
    Modifier
    Constructor
    Description
     
    LineSegment2d(double startX, double startY, double endX, double endY)
    Construct a new LineSegment2d from four coordinates.
     
    LineSegment2d(double startX, double startY, Point2d end)
    Construct a new LineSegment2d from two coordinates and a Point2d.
     
    LineSegment2d(Point2d start, double endX, double endY)
    Construct a new LineSegment2d from a Point2d and two coordinates.
     
    Construct a new LineSegment2d from two Point2d objects.
     
    LineSegment3d(double startX, double startY, double startZ, double endX, double endY, double endZ)
    Construct a new LineSegment3d from six coordinates.
     
    LineSegment3d(double startX, double startY, double startZ, Point3d end)
    Construct a new LineSegment3d from three coordinates and a Point3d.
     
    LineSegment3d(Point3d start, double endX, double endY, double endZ)
    Construct a new LineSegment3d from a Point3d and three coordinates.
     
    Construct a new LineSegment3d from two Point3d objects.
     
    Polygon2d(boolean filterDuplicates, List<Point2d> pointList)
    Create a new Polygon2d, optionally filtering out repeating successive points.
     
    Polygon2d(boolean filterDuplicates, Point2d... points)
    Create a new Polygon2d, optionally filtering out repeating successive points.
     
    Polygon2d(double[] x, double[] y)
    Construct a new Polygon2d.
     
    Construct a new Polygon2d from a list of Point2d objects.
     
    Polygon2d(Point2d[] points)
    Construct a new Polygon2d.
     
    Polygon2d(Point2d point1, Point2d point2, Point2d... otherPoints)
    Construct a new Polygon2d.
     
    Polygon3d(boolean filterDuplicates, List<Point3d> pointList)
    Create a new Polygon3d, optionally filtering out repeating successive points.
     
    Polygon3d(boolean filterDuplicates, Point3d... points)
    Create a new Polygon3d, optionally filtering out repeating successive points.
     
    Polygon3d(double[] x, double[] y, double[] z)
    Construct a new Polygon3d.
     
    Construct a new Polygon3d from a list of Point3d objects.
     
    Polygon3d(Point3d[] points)
    Construct a new Polygon3d.
     
    Polygon3d(Point3d point1, Point3d point2, Point3d... otherPoints)
    Construct a new Polygon3d.
    (package private)
    PolyLine2d(boolean copyNeeded, double[] x, double[] y)
    Construct a new PolyLine2d from an array of double x values and an array of double y values.
     
    PolyLine2d(boolean filterDuplicates, List<Point2d> pointList)
    Create a new PolyLine2d, optionally filtering out repeating successive points.
     
    PolyLine2d(boolean filterDuplicates, Point2d... points)
    Create a new PolyLine2d, optionally filtering out repeating successive points.
     
    PolyLine2d(double[] x, double[] y)
    Construct a new PolyLine2d from an array of x-values and an array of y-values.
     
    PolyLine2d(double x, double y, double heading)
    Construct a degenerate PolyLine2d (consisting of only one point).
     
    Construct a new PolyLine2d from a Path2D.
     
    Construct a new PolyLine2d from an iterator that yields Point2d objects.
     
    PolyLine2d(List<Point2d> pointList)
    Construct a new PolyLine2d from a List<Point2d>.
     
    PolyLine2d(DirectedPoint2d directedPoint2d)
    Construct a degenerate PolyLine2d (consisting of only one point).
     
    PolyLine2d(Point2d[] points)
    Construct a new PolyLine2d from an array of Point2d.
     
    PolyLine2d(Point2d p, double heading)
    Construct a degenerate PolyLine2d (consisting of only one point).
     
    PolyLine2d(Point2d point1, Point2d point2, Point2d... otherPoints)
    Construct a new PolyLine2d from two or more Point2d arguments.
     
    PolyLine3d(boolean filterDuplicates, List<Point3d> pointList)
    Create a new PolyLine3d, optionally filtering out repeating successive points.
     
    PolyLine3d(boolean filterDuplicates, Point3d... points)
    Create a new PolyLine3d, optionally filtering out repeating successive points.
     
    PolyLine3d(double[] x, double[] y, double[] z)
    Construct a new PolyLine3d from an array of Point2d.
     
    PolyLine3d(double x, double y, double z, double dirY, double dirZ)
    Construct a degenerate PolyLine3d (consisting of only one point).
     
    Construct a new PolyLine3d from an iterator that yields Point3d objects.
     
    PolyLine3d(List<Point3d> pointList)
    Construct a new PolyLine3d from a List<Point3d>.
     
    PolyLine3d(DirectedPoint3d directedPoint3d)
    Construct a degenerate PolyLine3d (consisting of only one point).
     
    PolyLine3d(Point3d[] points)
    Construct a new PolyLine3d from an array of Point3d.
     
    PolyLine3d(Point3d p, double dirY, double dirZ)
    Construct a degenerate PolyLine3d (consisting of only one point).
     
    PolyLine3d(Point3d point1, Point3d point2, Point3d... otherPoints)
    Construct a new PolyLine3d from two or more Point3d arguments.
     
    Ray2d(double x, double y, double dirZ)
    Construct a new Ray2d.
     
    Ray2d(double x, double y, double throughX, double throughY)
    Construct a new Ray2d.
     
    Ray2d(double x, double y, Point2d throughPoint)
    Construct a new Ray2d.
     
    Ray2d(Point2d point, double dirZ)
    Construct a new Ray2d from a Point2d and a direction.
     
    Ray2d(Point2d point, double throughX, double throughY)
    Construct a new Ray2d.
     
    Ray2d(Point2d point, Point2d throughPoint)
    Construct a new Ray2d.
     
    Ray3d(double x, double y, double z, double throughX, double throughY, double throughZ)
    Construct a new Ray3d.
     
    Ray3d(double x, double y, double z, Point3d throughPoint)
    Construct a new Ray3d.
     
    Ray3d(Point3d point, double throughX, double throughY, double throughZ)
    Construct a new Ray3d.
     
    Ray3d(Point3d point, Point3d throughPoint)
    Construct a new Ray3d.
  • Uses of DrawRuntimeException in org.djutils.draw.point

    Modifier and Type
    Method
    Description
    static final List<Point2d>
    Point2d.circleIntersections(Point2d center1, double radius1, Point2d center2, double radius2)
    Return the zero, one or two intersections between two circles.
    Point.closestPointOnLine(P linePoint1, P linePoint2)
    Project a point on a line.
    final Point2d
    Point2d.closestPointOnLine(double p1X, double p1Y, double p2X, double p2Y)
    Project a point on a line.
    Point2d.closestPointOnLine(double p1X, double p1Y, double p2X, double p2Y, Boolean lowLimitHandling, Boolean highLimitHandling)
    Compute the closest point on a line with optional limiting of the result on either end.
    Point2d.closestPointOnLine(Point2d linePoint1, Point2d linePoint2)
     
    final Point3d
    Point3d.closestPointOnLine(double p1X, double p1Y, double p1Z, double p2X, double p2Y, double p2Z)
    Project a point on a line.
    Point3d.closestPointOnLine(double p1X, double p1Y, double p1Z, double p2X, double p2Y, double p2Z, Boolean lowLimitHandling, Boolean highLimitHandling)
    Compute the closest point on a line with optional limiting of the result on either end.
    final Point3d
    Point3d.closestPointOnLine(Point3d linePoint1, Point3d linePoint2)
     
    final Point3d
    Point3d.closestPointOnSegment(double p1X, double p1Y, double p1Z, double p2X, double p2Y, double p2Z)
    Project a point on a line segment.
    double
    Point2d.fractionalPositionOnLine(double p1X, double p1Y, double p2X, double p2Y, Boolean lowLimitHandling, Boolean highLimitHandling)
    Compute the fractional position of the closest point on a line with optional limiting of the result on either end.
    double
    Point3d.fractionalPositionOnLine(double p1X, double p1Y, double p1Z, double p2X, double p2Y, double p2Z, Boolean lowLimitHandling, Boolean highLimitHandling)
    Compute the fractional position of the closest point on a line with optional limiting of the result on either end.
    static Point2d
    Point2d.intersectionOfLines(double line1P1X, double line1P1Y, double line1P2X, double line1P2Y, boolean lowLimitLine1, boolean highLimitLine1, double line2P1X, double line2P1Y, double line2P2X, double line2P2Y, boolean lowLimitLine2, boolean highLimitLine2)
    Compute the 2D intersection of two lines.
    static Point2d
    Point2d.intersectionOfLines(double l1P1X, double l1P1Y, double l1P2X, double l1P2Y, double l2P1X, double l2P1Y, double l2P2X, double l2P2Y)
    Compute the 2D intersection of two lines.
    static Point2d
    Point2d.intersectionOfLineSegments(double line1P1X, double line1P1Y, double line1P2X, double line1P2Y, double line2P1X, double line2P1Y, double line2P2X, double line2P2Y)
    Compute the 2D intersection of two line segments.
    static Point2d
    Point2d.intersectionOfLineSegments(Point2d line1P1, Point2d line1P2, Point2d line2P1, Point2d line2P2)
    Compute the 2D intersection of two line segments.
    DirectedPoint3d.normalize()
     
    OrientedPoint3d.normalize()
     
    Point.normalize()
    Return a new Point with a distance of 1 to the origin.
    Point2d.normalize()
     
    Point3d.normalize()
     
    Point3d.project()
     
    Constructors in org.djutils.draw.point that throw DrawRuntimeException
    Modifier
    Constructor
    Description
     
    DirectedPoint2d(double x, double y, double throughX, double throughY)
    Construct a new DirectedPoint2d from two coordinates and the coordinates of a point that the direction goes through.
     
    DirectedPoint2d(Point2d point, double throughX, double throughY)
    Construct a new DirectedPoint2d from a Point2d and the coordinates of a point that the direction goes through.
     
    DirectedPoint3d(double x, double y, double z, double throughX, double throughY, double throughZ)
    Construct a new DirectedPoint3d from three coordinates and the coordinates of a point that the direction goes through.
     
    DirectedPoint3d(double x, double y, double z, Point3d throughPoint)
    Construct a new DirectedPoint3d from x, y and z coordinates and a point that the direction goes through.
     
    DirectedPoint3d(Point3d point, double throughX, double throughY, double throughZ)
    Construct a new DirectedPoint3d form a Point3d and the coordinates that the direction goes through.
     
    DirectedPoint3d(Point3d point, Point3d throughPoint)
    Construct a new DirectedPoint3d.
  • Uses of DrawRuntimeException in org.djutils.draw.surface

    Modifier and Type
    Method
    Description
    Surface3d.project()
     
    Modifier
    Constructor
    Description
     
    Surface3d(Point3d[][] points)
    Construct a new Surface3d.