## Uses of Interface
org.eclipse.gef.geometry.planar.ICurve

Packages that use ICurve
org.eclipse.gef.geometry.planar: This package provides support for geometric calculations based on shapes.

### Uses of ICurve in org.eclipse.gef.geometry.planar

Classes in org.eclipse.gef.geometry.planar that implement ICurve
`class` `Arc` Represents the geometric shape of an `Arc`, which is defined by its enclosing framing `Rectangle`, a start `Angle` (relative to the x-axis), and an angular extend in counter-clockwise (CCW) direction.
`class` `BezierCurve` Instances of the `BezierCurve` class individually represent an arbitrary Bezier curve.
`class` `CubicCurve` An instance of the `CubicCurve` class represents a `BezierCurve` of degree 3, having a start and an end `Point` and two handle `Point`s.
`class` `Line` Represents the geometric shape of a line (or linear curve).
`class` `PolyBezier` A `PolyBezier` is an `ICurve` which consists of one or more connected `BezierCurve`s.
`class` `Polyline` Represents the geometric shape of a polyline.
`class` `QuadraticCurve` Represents the geometric shape of a quadratic Bézier curve.

Methods in org.eclipse.gef.geometry.planar that return ICurve
`ICurve` IShape.`getOutline()` Returns an `ICurve` representing the outline of this `IShape` .
`ICurve` Ellipse.`getOutline()`
`ICurve[]` IMultiShape.`getOutlines()` Computes the outlines of this `IMultiShape`.
`ICurve[]` IShape.`getOutlineSegments()` Returns the individual `ICurve` segments, which constitute the outline of this `IShape`.
`ICurve[]` IMultiShape.`getOutlineSegments()` Computes the outline segments of this `IMultiShape`.
`ICurve[]` Polyline.`getOverlaps(ICurve c)`
`ICurve[]` PolyBezier.`getOverlaps(ICurve c)`
`ICurve[]` ICurve.`getOverlaps(ICurve c)` Returns the curve segments at which this `ICurve` and the given `ICurve` overlap.
`ICurve[]` BezierCurve.`getOverlaps(ICurve c)`
`ICurve[]` Arc.`getOverlaps(ICurve c)`

Methods in org.eclipse.gef.geometry.planar that return types with arguments of type ICurve
`java.util.List<ICurve>` Path.`getOutlines()` Returns a `List` of `ICurve`s, representing the outline of `this` `Path`.

Methods in org.eclipse.gef.geometry.planar with parameters of type ICurve
`Point[]` Polyline.`getIntersections(ICurve c)`
`Point[]` PolyBezier.`getIntersections(ICurve c)`
`Point[]` ICurve.`getIntersections(ICurve c)` Returns the points of intersection between this `ICurve` and the given `ICurve`.
`Point[]` Ellipse.`getIntersections(ICurve c)` Calculates the intersections of this `Ellipse` with the given `ICurve`.
`Point[]` BezierCurve.`getIntersections(ICurve curve)`
`Point[]` Arc.`getIntersections(ICurve c)`
`Point[]` Region.`getOutlineIntersections(ICurve c)` Computes the `Point`s of intersection of this `Region` with the given `ICurve`.
`ICurve[]` Polyline.`getOverlaps(ICurve c)`
`ICurve[]` PolyBezier.`getOverlaps(ICurve c)`
`ICurve[]` ICurve.`getOverlaps(ICurve c)` Returns the curve segments at which this `ICurve` and the given `ICurve` overlap.
`ICurve[]` BezierCurve.`getOverlaps(ICurve c)`
`ICurve[]` Arc.`getOverlaps(ICurve c)`
`boolean` Polyline.`intersects(ICurve c)`
`boolean` PolyBezier.`intersects(ICurve c)`
`boolean` Line.`intersects(ICurve c)`
`boolean` ICurve.`intersects(ICurve c)` Tests if this `ICurve` and the given `ICurve` intersect, i.e.
`boolean` BezierCurve.`intersects(ICurve c)`
`boolean` Arc.`intersects(ICurve c)`
`boolean` Polyline.`overlaps(ICurve c)`
`boolean` PolyBezier.`overlaps(ICurve c)`
`boolean` ICurve.`overlaps(ICurve c)` Tests if this `ICurve` and the given `ICurve` overlap, i.e.
`boolean` BezierCurve.`overlaps(ICurve c)`
`boolean` Arc.`overlaps(ICurve c)`