A newer version of this page is available. Switch to the current version.

MapPolygon Class

The class used to draw a polygon on a map.

Namespace: DevExpress.XtraMap

Assembly: DevExpress.XtraMap.v19.1.dll

Declaration

public class MapPolygon :
    MapShape,
    ISupportCoordPoints,
    IPolygonCore,
    IPointContainerCore,
    IEditableItem,
    ISimplifiableItem
Public Class MapPolygon
    Inherits MapShape
    Implements ISupportCoordPoints,
               IPolygonCore,
               IPointContainerCore,
               IEditableItem,
               ISimplifiableItem

Related API Members

The following members accept/return MapPolygon objects:

Remarks

The following image shows an example of a map polygon object.

MapPolygonExample

Note that, a map shape should fulfill the following condition to cross the 180th meridian: one or several points' longitudes should exceed the 180 (-180) limit:


MapPolygon polygon = new MapPolygon();
polygon.Points.Add(new GeoPoint(10, -170));
polygon.Points.Add(new GeoPoint(10, 170));
polygon.Points.Add(new GeoPoint(-10, 170));
polygon.Points.Add(new GeoPoint(-10, -170));
vectorItemStorage.Items.Add(polygon);

// Point longitudes enclose the 180 meridian.
MapPolygon polygonCross180 = New MapPolygon();
polygonCross180.Fill = Color.Orange;
polygonCross180.Points.Add(new GeoPoint(30, 190));
polygonCross180.Points.Add(new GeoPoint(30, 170));
polygonCross180.Points.Add(new GeoPoint(20, 170));
polygonCross180.Points.Add(new GeoPoint(20, 190));
vectorItemStorage.Items.Add(polygon180);

The code above produces the following image:

map-control__cross-180th-meridian

Examples

var polygon = new MapPolygon();
polygon.Points.AddRange(new GeoPoint[] {
    new GeoPoint(70,80),
    new GeoPoint(75,90),
    new GeoPoint(75,130)
});
ItemStorage.Items.Add(polygon);

Inheritance

See Also