A polygon is a shape that represents a closed polygon without holes. A polygon always is defined in a particular geographical reference (Geodetic reference or Grid Reference). A Polygon cannot be instantiated directly. It must be instantiated using createPolygon.

Hierarchy

Constructors

Accessors

  • get bounds(): Bounds
  • The bounds of this shape. This property is to be treated in a read only manner. An error will be thrown when trying to assign to this property. Note that the bounds property is not immutable. Modifying properties of the bounds property may corrupt your data.

    Returns Bounds

  • get coordinateType(): CoordinateType
  • The coordinate type this shape. This property is read only. An Error will be thrown when trying to assign to this property.

    Returns CoordinateType

  • get focusPoint(): Point
  • The focus point of this shape. This property is read only. An error will be thrown when trying to assign to this property. This property contains an object but should be treated with value semantics: changes to the shape will not be reflected in the focusPoint that was retrieved from this Polygon before the modification.

    Returns Point

  • get pointCount(): number
  • The number of points in the polygon

    Returns number

  • get reference(): null | CoordinateReference
  • The spatial reference of this shape. This property is read only. An Error will be thrown when trying to assign to this property.

    Returns null | CoordinateReference

Methods

  • Determines whether a given point is inside this shape. This method checks containment only in two dimensions: on the (x,y)-axis or the (lon,lat)-axis (depending on the spatial reference of the shape).

    Parameters

    • x: number | Point | Bounds

      The point for which containment must be checked. If a 3D point is passed to this function, it will be treated as a 2D point: the z coordinate (height) will be ignored. The reference of this point must be the same reference as this Shape

    • Optional y: number

    Returns boolean

    true when the given point is contained in this shape

    Throws

    Point with another spatial reference

    Deprecated

    Please use contains2DPoint instead.

  • Determines whether the given point is inside this shape. This method checks containment only in two dimensions: on the (x,y)-axis or the (lon,lat)-axis (depending on the spatial reference of the shape).

    Parameters

    • x: number

      The x coordinate of the point for which containment must be checked

    • y: number

      The y coordinate of the point for which containment must be checked

    Returns boolean

    true when the given point is contained in this shape

    Throws

    Point with another spatial reference

  • Determines whether the given point is inside this shape. This method checks containment only in two dimensions: on the (x,y)-axis or the (lon,lat)-axis (depending on the spatial reference of the shape).

    Parameters

    • point: Point

      The point for which containment must be checked.

    Returns boolean

    true when the given point is contained in this shape

    Throws

    Point with another spatial reference

  • Indicates whether this shape is equal to another.

    Parameters

    • otherPolygon: Shape

      the other shape this shape is compared with.

    Returns boolean

    true if both shapes are equal, false otherwise.

  • Returns the point of the polygon at the given index. Any subsequent mutation on the point affects the polygon shape. Note: A new Point is returned on each function invocation that shares the same point representation of the polygon.

    const pA = polygon.getPoint(0)
    const pB = polygon.getPoint(0)
    console.log(pA === pB) // false
    pA.x = 100;
    console.log(pA.x, pB.x, polygon.getPoint(0).x) // 100, 100, 100

    Parameters

    • index: number

      The index of the point to be returned.

    Returns Point

    the point at the given index

  • Inserts a Point at a given position in this Polygon. The point must be defined in the same spatial reference as the polygon, otherwise an exception will be thrown.

    Parameters

    • index: number

      The index at which the point must be inserted

    • point: Point

      The point to be inserted

    Returns void

    Throws

    InvalidReferenceError When the point's spatial reference does not correspond with the polygon's spatial reference.

    Throws

    ProgrammingError When the index is invalid (i.e. smaller than zero or larger than the amount of points in the polygon.

  • Verifies whether the polygon is valid. A valid polygon:

    • consists of at least 3 points

    Returns boolean

    true if the polygon is valid, false otherwise

  • Moves the x and y coordinates of the point at the given index to the given coordinates. The z value remains unchanged.

    Parameters

    • index: number

      The index of the point that must be removed.

    • x: number

      x coordinate value

    • y: number

      y coordinate value

    Returns void

    Throws

    ProgrammingError When the index is invalid (i.e. smaller than zero or larger than the index of the last point in the polygon

  • Moves the point at the given index to the given coordinates.

    Parameters

    • index: number

      The index of the point that must be removed.

    • x: number

      x coordinate value

    • y: number

      y coordinate value

    • z: number

      z coordinate value

    Returns void

    Throws

    ProgrammingError When the index is invalid (i.e. smaller than zero or larger than the index of the last point in the polygon

  • Removes a point at a given position in this Polygon. This method does not guarantee that the polygon remains valid, i.e. the polygon must at least have 3 points. Validity of the polygon can be checked with Polygon.isValid.

    Parameters

    • index: number

      The index of the point that must be removed.

    Returns void

    Throws

    ProgrammingError When the index is invalid (i.e. smaller than zero or larger than the index of the last point in the polygon

  • Converts the shape to a string. This functionality is for debugging purposes only. Results of toString cannot be used to uniquely identify a shape instance.

    Returns string

  • Translates all the points of this Polygon over the given vector in 2D or 3D space. A point is only translated in 3D space if the z parameter is specified.

    Parameters

    • x: number

      x coordinate value

    • y: number

      y coordinate value

    • Optional z: number

      z coordinate value

    Returns void

  • Translates the shape over the given vector in 2D space.

    Parameters

    • x: number

      The x coordinate of the translation vector

    • y: number

      The y coordinate of the translation vector

    Returns void

  • Translates all the points of this Polygon over the given vector in 3D space.

    Parameters

    • x: number

      x coordinate value

    • y: number

      y coordinate value

    • z: number

      z coordinate value

    Returns void

  • Translates the point at the given index over the given vector in 2D or 3D space. A point is only translated in 3D space the z parameter is specified.

    Parameters

    • index: number

      The index of the point that must be removed.

    • x: number

      x coordinate value

    • y: number

      y coordinate value

    • Optional z: number

      z coordinate value

    Returns void

    Throws

    ProgrammingError When the index is invalid (i.e. smaller than zero or larger than the index of the last point in the polygon