# get_midpoint

pyhelpers.geom.get_midpoint(x1, y1, x2, y2, as_geom=False)

Get the midpoint between two points (applicable for vectorized computation).

Parameters
• x1 (float or int or Iterable or numpy.ndarray) – longitude(s) or easting(s) of a point (an array of points)

• y1 (float or int or Iterable or numpy.ndarray) – latitude(s) or northing(s) of a point (an array of points)

• x2 (float or int or Iterable or numpy.ndarray) – longitude(s) or easting(s) of another point (another array of points)

• y2 (float or int or Iterable or numpy.ndarray) – latitude(s) or northing(s) of another point (another array of points)

• as_geom (bool) – whether to return shapely.geometry.Point, defaults to `False`

Returns

the midpoint between `(x1, y1)` and `(x2, y2)` (or midpoints between two sequences of points)

Return type

numpy.ndarray or shapely.geometry.Point or shapely.geometry.MultiPoint

Examples:

```>>> from pyhelpers.geom import get_midpoint

>>> x_1, y_1 = 1.5429, 52.6347
>>> x_2, y_2 = 1.4909, 52.6271

>>> midpt = get_midpoint(x_1, y_1, x_2, y_2)
>>> midpt
array([ 1.5169, 52.6309])

>>> midpt = get_midpoint(x_1, y_1, x_2, y_2, as_geom=True)
>>> midpt.wkt
'POINT (1.5169 52.6309)'

>>> x_1, y_1 = (1.5429, 1.4909), (52.6347, 52.6271)
>>> x_2, y_2 = [2.5429, 2.4909], [53.6347, 53.6271]

>>> midpt = get_midpoint(x_1, y_1, x_2, y_2)
>>> midpt
array([[ 2.0429, 53.1347],
[ 1.9909, 53.1271]])

>>> midpt = get_midpoint(x_1, y_1, x_2, y_2, as_geom=True)
>>> midpt.wkt
'MULTIPOINT (2.0429 53.1347, 1.9909 53.1271)'
```