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

Packages that use ICurve
Package
Description
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
Modifier and Type
Class
Description
`final 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
Modifier and Type
Method
Description
`ICurve`
Ellipse.`getOutline()`
`ICurve`
IShape.`getOutline()`
Returns an `ICurve` representing the outline of this `IShape` .
`ICurve[]`
IMultiShape.`getOutlines()`
Computes the outlines of this `IMultiShape`.
`ICurve[]`
IMultiShape.`getOutlineSegments()`
Computes the outline segments of this `IMultiShape`.
`ICurve[]`
IShape.`getOutlineSegments()`
Returns the individual `ICurve` segments, which constitute the outline of this `IShape`.
`ICurve[]`
Arc.`getOverlaps(ICurve c)`
`final ICurve[]`
BezierCurve.`getOverlaps(ICurve c)`
`ICurve[]`
ICurve.`getOverlaps(ICurve c)`
Returns the curve segments at which this `ICurve` and the given `ICurve` overlap.
`ICurve[]`
PolyBezier.`getOverlaps(ICurve c)`
`ICurve[]`
Polyline.`getOverlaps(ICurve c)`
Methods in org.eclipse.gef.geometry.planar that return types with arguments of type ICurve
Modifier and Type
Method
Description
`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
Modifier and Type
Method
Description
`Point[]`
Arc.`getIntersections(ICurve c)`
`final Point[]`
BezierCurve.`getIntersections(ICurve curve)`
`Point[]`
Ellipse.`getIntersections(ICurve c)`
Calculates the intersections of this `Ellipse` with the given `ICurve`.
`Point[]`
ICurve.`getIntersections(ICurve c)`
Returns the points of intersection between this `ICurve` and the given `ICurve`.
`Point[]`
PolyBezier.`getIntersections(ICurve c)`
`Point[]`
Polyline.`getIntersections(ICurve c)`
`Point[]`
Region.`getOutlineIntersections(ICurve c)`
Computes the `Point`s of intersection of this `Region` with the given `ICurve`.
`ICurve[]`
Arc.`getOverlaps(ICurve c)`
`final ICurve[]`
BezierCurve.`getOverlaps(ICurve c)`
`ICurve[]`
ICurve.`getOverlaps(ICurve c)`
Returns the curve segments at which this `ICurve` and the given `ICurve` overlap.
`ICurve[]`
PolyBezier.`getOverlaps(ICurve c)`
`ICurve[]`
Polyline.`getOverlaps(ICurve c)`
`boolean`
Arc.`intersects(ICurve c)`
`boolean`
BezierCurve.`intersects(ICurve c)`
`boolean`
ICurve.`intersects(ICurve c)`
Tests if this `ICurve` and the given `ICurve` intersect, i.e.
`boolean`
Line.`intersects(ICurve c)`
`boolean`
PolyBezier.`intersects(ICurve c)`
`boolean`
Polyline.`intersects(ICurve c)`
`boolean`
Arc.`overlaps(ICurve c)`
`final boolean`
BezierCurve.`overlaps(ICurve c)`
`boolean`
ICurve.`overlaps(ICurve c)`
Tests if this `ICurve` and the given `ICurve` overlap, i.e.
`boolean`
PolyBezier.`overlaps(ICurve c)`
`boolean`
Polyline.`overlaps(ICurve c)`