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

Packages that use IGeometry
Package
Description
org.eclipse.gef.geometry.planar
This package provides support for geometric calculations based on shapes.

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

Classes in org.eclipse.gef.geometry.planar with type parameters of type IGeometry
Modifier and Type
Interface
Description
`interface`
`IRotatable<T extends IGeometry>`
The `IRotatable` interface collects the out-of-place rotation short-cut methods.
`interface`
`IScalable<T extends IGeometry>`
The `IScalable` interface collects all scaling short-cut methods.
`interface`
`ITranslatable<T extends IGeometry>`
The `ITranslatable` interface collects all translation short-cut methods.
Subinterfaces of IGeometry in org.eclipse.gef.geometry.planar
Modifier and Type
Interface
Description
`interface`
`ICurve`
The `ICurve` interface provides operations that allow the analysis of linear geometric objects and the transfer to `BezierCurve` segments ( `ICurve.toBezier()`).
`interface`
`IMultiShape`
In contradiction to the relation of the IPolyCurve to the ICurve interfaces, the IMultiShape interface does not extend the IShape interface.
`interface`
`IShape`
An `IShape` is the representation of an areal geometric object.
Classes in org.eclipse.gef.geometry.planar that implement IGeometry
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`
`CurvedPolygon`
A `CurvedPolygon` is an `IShape` with `BezierCurve` edges.
`class`
`Ellipse`
Represents the geometric shape of an ellipse.
`class`
`Line`
Represents the geometric shape of a line (or linear curve).
`class`
`Path`
Represents the geometric shape of a path, which may consist of independent subgraphs.
`class`
`Pie`
The `Pie` is a closed `AbstractArcBasedGeometry`.
`class`
`PolyBezier`
A `PolyBezier` is an `ICurve` which consists of one or more connected `BezierCurve`s.
`class`
`Polygon`
Represents the geometric shape of a convex polygon.
`class`
`Polyline`
Represents the geometric shape of a polyline.
`class`
`QuadraticCurve`
Represents the geometric shape of a quadratic Bézier curve.
`final class`
`Rectangle`
Represents the geometric shape of a rectangle, where a rectangle is characterized by means of its upper left corner (x,y) and its size (width, height).
`class`
`Region`
A combination of `Rectangle`s.
`class`
`Ring`
A combination of Polygons....
`final class`
`RoundedRectangle`
Represents the geometric shape of a rounded rectangle, i.e. a rectangle with rounded corners.
Methods in org.eclipse.gef.geometry.planar that return IGeometry
Modifier and Type
Method
Description
`IGeometry`
IGeometry.`getCopy()`
Returns a new identical copy of this `IGeometry`.
`IGeometry`
IGeometry.`getTransformed(AffineTransform t)`
Returns a new `IGeometry`, which represents the given `IGeometry` after the application of the given `AffineTransform`.
Methods in org.eclipse.gef.geometry.planar with parameters of type IGeometry
Modifier and Type
Method
Description
`boolean`
CurvedPolygon.`contains(IGeometry g)`
`boolean`
Ellipse.`contains(IGeometry g)`
`boolean`
IMultiShape.`contains(IGeometry g)`
Checks if the given `IGeometry` is fully contained by this `IMultiShape`.
`boolean`
IShape.`contains(IGeometry g)`
Tests whether the given `IGeometry` is fully contained by this `IShape`.
`boolean`
Pie.`contains(IGeometry g)`
`boolean`
Polygon.`contains(IGeometry g)`
`boolean`
Rectangle.`contains(IGeometry g)`
`boolean`
Region.`contains(IGeometry g)`
`boolean`
Ring.`contains(IGeometry g)`
`boolean`
RoundedRectangle.`contains(IGeometry g)`
`boolean`
IGeometry.`touches(IGeometry g)`
Returns `true` if the input `IGeometry` touches this `IGeometry`, i.e. there is at least one common point.
`boolean`
Line.`touches(IGeometry g)`
`boolean`
Rectangle.`touches(IGeometry g)`