Я пытаюсь построить гео json круг с точкой в ​​нем ... Но он не сливается с частью геометрии в нем - PullRequest
0 голосов
/ 07 апреля 2020
geo_json = [ 
    {
        "type": "Feature",
        "geometry": {
            "type": "Point",
            "coordinates": [lon, lat] 
        },
        "properties": {}
    }
]

Я хочу, чтобы координаты окружности имели тот же формат, что и приведенный выше код.

import geojson
import shapely
from shapely.geometry import Point

center = Point(lat,long) 
circle = center.buffer(0.3)  
poly = geojson.dumps(shapely.geometry.mapping(circle))

feature_col = FeatureCollection([geo_json,circle])
print(poly)

Но я не могу сделать это для многоугольника окружности. Есть ли другой метод, где мы можем сделать то же самое?

1 Ответ

0 голосов
/ 07 апреля 2020

Если я правильно понимаю:

import shapely, geojson
lat = long = 0
center = shapely.geometry.Point([lat, long])
poly = list(center.buffer(0.3).exterior.coords)
json_points = [geojson.Feature(geometry=shapely.geometry.Point(p)) for p in poly_points]
json_points = geojson.FeatureCollection(json_points)

Поскольку существуют как shapely.geometry.Point, так и geo json .Point, я бы не стал импортировать как просто «Точка», даже если это повлечет за собой некоторые громоздкие вызовы.

...