Exemplo n.º 1
0
def get_intersection_points2D(intersection_points: list,
                              trans_mat2D: np.ndarray,
                              trans_constant: np.ndarray) -> tuple:
    lhs_point, rhs_point = intersection_points
    new_lhs_point = Point(lhs_point.x, lhs_point.y)
    new_rhs_point = Point(rhs_point.x, rhs_point.y)
    new_lhs_point = new_lhs_point.translate(-trans_constant[0],
                                            -trans_constant[1])
    new_rhs_point = new_rhs_point.translate(-trans_constant[0],
                                            -trans_constant[1])
    x1 = np.linalg.solve(
        trans_mat2D, np.array([float(new_lhs_point.x),
                               float(new_lhs_point.y)]))
    x2 = np.linalg.solve(
        trans_mat2D, np.array([float(new_rhs_point.x),
                               float(new_rhs_point.y)]))

    x = np.array([x1[0], x2[0]])
    y = np.array([x1[1], x2[1]])
    return x, y