Polygon class
A polygon geometry with one exterior and 0 to N interior rings.
An empty polygon has no rings.
- Inheritance
-
- Object
- Positionable
- Bounded
- Geometry
- SimpleGeometry
- Polygon
Constructors
-
Polygon(List<
PositionSeries> rings, {Box? bounds}) -
A polygon geometry with one exterior and 0 to N interior
rings
.const -
Polygon.build(Iterable<
Iterable< rings, {Coords type = Coords.xy, Box? bounds})double> > -
Builds a polygon geometry from one exterior and 0 to N interior
rings
.factory -
Polygon.decode(Uint8List bytes, {BinaryFormat<
SimpleGeometryContent> format = WKB.geometry, CoordRefSys? crs, Map<String, dynamic> ? options}) -
Decodes a polygon geometry from
bytes
conforming toformat
.factory -
Polygon.decodeHex(String bytesHex, {BinaryFormat<
SimpleGeometryContent> format = WKB.geometry, CoordRefSys? crs, Map<String, dynamic> ? options}) -
Decodes a polygon geometry from
bytesHex
(as a hex string) conforming toformat
.factory -
Polygon.from(Iterable<
Iterable< rings, {Box? bounds})Position> > -
A polygon geometry with one exterior and 0 to N interior
rings
.factory -
Polygon.parse(String text, {TextReaderFormat<
SimpleGeometryContent> format = GeoJSON.geometry, CoordRefSys? crs, Map<String, dynamic> ? options}) -
Parses a polygon geometry from
text
conforming toformat
.factory -
Polygon.parseCoords(Iterable<
String> rings, {Pattern delimiter = ',', Coords type = Coords.xy, bool swapXY = false, bool singlePrecision = false}) -
Parses a polygon geometry from
rings
with linear rings formatted as texts containing coordinate values separated bydelimiter
.factory
Properties
- bounds → Box?
-
An optional bounding box explicitely set (or otherwise directly available)
for this object.
no setterinherited
- coordType → Coords
-
A value of Coords representing the coordinate type of position data
contained directly or within child objects.
no setteroverride
- exterior → PositionSeries?
-
An exterior ring of this polygon.
no setter
- geomType → Geom
-
The geometry type.
no setteroverride
- hashCode → int
-
The hash code for this object.
no setteroverride
-
interior
→ Iterable<
PositionSeries> -
The interior rings (or holes) of this polygon, allowed to be empty.
no setter
- isEmptyByGeometry → bool
-
Returns true if this geometry is considered empty.
no setteroverride
-
rings
→ List<
PositionSeries> -
The rings (exterior + interior) of this polygon.
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
area2D(
) → double -
Returns the area of this geometry calculated in a cartesian 2D plane.
override
-
boundsAligned2D(
{Aligned align = Aligned.center, PositionScheme scheme = Position.scheme}) → Position? -
Returns an aligned 2D position relative to a bounding box accessed by
getBounds.
inherited
-
calculateBounds(
{PositionScheme scheme = Position.scheme}) → Box? -
Calculate a bounding box for this object.
override
-
centroid2D(
{PositionScheme scheme = Position.scheme}) → Position? -
Returns the centroid of this geometry calculated in a cartesian 2D plane.
override
-
dimensionality2D(
) → Dimensionality -
Returns the true dimensionality of this geometry in 2D.
inherited
-
distanceTo2D(
Position destination) → double -
Returns a distance from this to
destination
calculated in a cartesian 2D plane.override -
equals2D(
covariant Geometry other, {double toleranceHoriz = defaultEpsilon}) → bool -
True if this and
other
equals by testing 2D coordinate values of all position data (that must be in same order in both objects) contained directly or by child objects.override -
equals3D(
covariant Geometry other, {double toleranceHoriz = defaultEpsilon, double toleranceVert = defaultEpsilon}) → bool -
True if this and
other
equals by testing 3D coordinate values of all position data (that must be in same order in both objects) contained directly or by child objects.override -
equalsCoords(
covariant Geometry other) → bool -
True if this and
other
contain exactly same coordinate values (or both are empty) in the same order and with the same coordinate type.override -
getBounds(
{PositionScheme scheme = Position.scheme}) → Box? -
Returns the current bounds if it's populated and conforms to
scheme
, or otherwise returns one calculated by calculateBounds.inherited -
isPointInPolygon2D(
Position point) → bool -
Returns true if
point
is inside this polygon. -
length2D(
) → double -
Returns the length of this geometry calculated in a cartesian 2D plane.
override
-
length3D(
) → double -
Returns the length of this geometry calculated in a cartesian 3D space.
override
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
polylabel2D(
{double precision = 1.0, PositionScheme scheme = Position.scheme}) → DistancedPosition< Position> -
Calculates
polylabel
for this polygon. -
populated(
{int traverse = 0, bool onBounds = true, PositionScheme scheme = Position.scheme}) → Polygon -
Returns a geometry of the same subtype as this with certain data members
populated.
override
-
project(
Projection projection) → Polygon -
Returns an object of the same subtype as this with all position data
projected using
projection
and non-positional properties left intact.override -
toBytes(
{BinaryFormat< SimpleGeometryContent> format = WKB.geometry, Endian? endian, CoordRefSys? crs, Map<String, dynamic> ? options}) → Uint8List -
The binary representation of this geometry object, with
format
applied.inherited -
toBytesHex(
{BinaryFormat< SimpleGeometryContent> format = WKB.geometry, Endian? endian, CoordRefSys? crs, Map<String, dynamic> ? options}) → String -
The binary representation as a hex string of this geometry object, with
format
applied.inherited -
toString(
) → String -
The string representation of this geometry object as specified by
GeoJSON.
inherited
-
toText(
{TextWriterFormat< SimpleGeometryContent> format = GeoJSON.geometry, int? decimals, CoordRefSys? crs, Map<String, dynamic> ? options}) → String -
The string representation of this geometry object, with
format
applied.inherited -
unpopulated(
{int traverse = 0, bool onBounds = true}) → Polygon -
Returns a geometry of the same subtype as this with certain data members
unpopulated (or cleared).
override
-
writeTo(
SimpleGeometryContent writer, {String? name}) → void -
Writes this geometry object to
writer
.override
Operators
-
operator ==(
Object other) → bool -
The equality operator.
override