Esempio n. 1
0
def angle_bet_two_linestring_ignore_inte_point(line1:LineString, line2:LineString ):
    """计算两条LineString的角度,仅仅考虑起点和终点

    Args:
        a (LineString or pd.Series): LineString 或者 pd.Series(包含的geometry为LineString)
        b (LineString): [description]

    Returns:
        [type]: 返回角度
    """
    a, b = line1.copy(), line2.copy()

    if isinstance(a, pd.Series): a = a.geometry
    if isinstance(b, pd.Series): b = b.geometry

    line_a, line_b = {}, {}
    line_a['x0'], line_a['y0'], line_a['x1'], line_a['y1'] = a.coords[0] + a.coords[-1]
    line_b['x0'], line_b['y0'], line_b['x1'], line_b['y1'] = b.coords[0] + b.coords[-1]

    return angle_bet_two_line(line_a, line_b)