Как получить список точек внутри списка многоугольников, используя петлю Python shapely - PullRequest
0 голосов
/ 24 сентября 2019

Я был смущен, чтобы определить, как сделать точки сбора, перечисленные в существующей коллекции полигонов

Я пробовал, но только для одного полигона, для многих полигонов я все еще в замешательстве, есть ли кто-то, кто хочетпомощь?

from shapely.geometry import  Point,Polygon
import shapely.wkt
import pandas as pd

if __name__ == '__main__':

  list_of_samples = [
        {
        'sample_id' : '1', 'lat' : 106.510234,'long' : -5.800502,'rsrp' : '5', 'rsrq' : '6'
        },{
        'sample_id' : '2', 'lat' : 106.511421,'long' : -5.802832,'rsrp' : '6', 'rsrq' : '7'
        },{
        'sample_id' : '3', 'lat' : 106.511045,'long' : -5.805545,'rsrp' : '6', 'rsrq' : '7'
        },{
        'sample_id' : '4', 'lat' : 106.510345,'long' : -5.803045,'rsrp' : '6', 'rsrq' : '7'
        }
    ]
    results = []
    for index in range(len(list_of_samples)):
        # print(list_of_samples[index])
        point = Point(list_of_samples[index]['long'], list_of_samples[index]['lat'])
        # print(point)
        grid = shapely.wkt.loads('POLYGON ((106.511421 -5.802852, 106.511421 -5.80251, 106.511765 -5.80251, 106.511765 -5.802852, 106.511421 -5.802852))')
        temp = grid.contains(point)
        if temp == True:
            results.append(list_of_samples[index])
            print(results)
        else:
            print(results)
...