Exemple #1
0
def test_ST_Envelope_Aggr():
    geo = "POLYGON ((0 0,0 1,1 1,1 0,0 0))"
    arr = [geo for x in range(1, 10000001)]
    data = pandas.Series(arr)
    rst = arctern.ST_AsText(
        arctern.ST_Envelope_Aggr(arctern.ST_GeomFromText(data)))
    assert len(rst) == 1
Exemple #2
0
def test_ST_Envelope_Aggr():
    p1 = "POLYGON ((0 0,4 0,4 4,0 4,0 0))"
    p2 = "POLYGON ((5 1,7 1,7 2,5 2,5 1))"
    data = pandas.Series([p1, p2])
    rst = arctern.ST_AsText(
        arctern.ST_Envelope_Aggr(arctern.ST_GeomFromText(data)))
    assert rst[0] == "POLYGON ((0 0,0 4,7 4,7 0,0 0))"
Exemple #3
0
 def test_tuple(self):
     p1 = "POLYGON ((0 0,4 0,4 4,0 4,0 0))"
     p2 = "POLYGON ((5 1,7 1,7 2,5 2,5 1))"
     data = (p1, p2)
     rst = arctern.ST_AsText(
         arctern.ST_Envelope_Aggr(arctern.ST_GeomFromText(data)))
     assert rst[0] == "POLYGON ((0 0,0 4,7 4,7 0,0 0))"
Exemple #4
0
 def test_ndarray(self):
     p1 = "POLYGON ((0 0,4 0,4 4,0 4,0 0))"
     p2 = "POLYGON ((5 1,7 1,7 2,5 2,5 1))"
     import numpy as np
     data = np.array([p1, p2])
     rst = arctern.ST_AsText(arctern.ST_Envelope_Aggr(arctern.ST_GeomFromText(data)))
     assert rst[0] == "POLYGON ((0 0,0 4,7 4,7 0,0 0))"
Exemple #5
0
    def envelope_aggr(self):
        """
        Compute the double-precision minimum bounding box geometry for the union of all geometries.

        :rtype: GeoSeries
        :return: A GeoSeries contains only one geometry.

        :example:
        >>> from arctern import GeoSeries
        >>> p1 = "POLYGON ((0 0,4 0,4 4,0 4,0 0))"
        >>> p2 = "POLYGON ((5 1,7 1,7 2,5 2,5 1))"
        >>> s = GeoSeries([p1, p2])
        >>> s.envelope_aggr()
        0    POLYGON ((0 0,0 4,7 4,7 0,0 0))
        dtype: GeoDtype
        """
        return GeoSeries(arctern.ST_Envelope_Aggr(self))
Exemple #6
0
def ST_Envelope_Aggr(geos):
    return arctern.ST_Envelope_Aggr(geos)
Exemple #7
0
def python_test(data):
    TIME_START(func_name)
    arctern.ST_AsText(arctern.ST_Envelope_Aggr(arctern.ST_GeomFromText(data)))
    TIME_END(func_name)

    return TIME_INFO()
Exemple #8
0
def test_ST_Envelope_Aggr():
    p1 = "POLYGON ((0 0,4 0,4 4,0 4,0 0))"
    p2 = "POLYGON ((5 1,7 1,7 2,5 2,5 1))"
    data = pandas.Series([p1, p2])
    rst = arctern.ST_Envelope_Aggr(pyarrow.array(data))
    assert rst[0] == "POLYGON ((0 0,0 4,7 4,7 0,0 0))"