コード例 #1
0
def edv(row):
    geometry_sou = row['sou_feature']
    geometry_tar = row['tar_feature']
    if geometry_sou.geom_type == "Point" and geometry_tar.geom_type == 'Point':
        distance = point_distance(geometry_sou, geometry_tar)
    else:
        # Obtain all the vertices of entities
        if geometry_sou.geom_type == 'Polygon':
            vertices1 = list(geometry_sou.exterior.coords)
        else:
            vertices1 = list(geometry_sou.coords)
        vertices1 = MultiPoint(vertices1)

        if geometry_tar.geom_type == 'Polygon':
            vertices2 = list(geometry_tar.exterior.coords)
        else:
            vertices2 = list(geometry_tar.coords)
        vertices2 = MultiPoint(vertices2)

        distance = vertices1.distance(vertices2)

    return distance