def intersect_point_tri(pt: 'mathutils.Vector', tri_p1: 'mathutils.Vector',
    tri_p2: 'mathutils.Vector', tri_p3: 'mathutils.Vector'
    ) ->'mathutils.Vector':
    """Takes 4 vectors: one is the point and the next 3 define the triangle. 

    :param pt: Point 
    :type pt: 'mathutils.Vector'
    :param tri_p1: First point of the triangle 
    :type tri_p1: 'mathutils.Vector'
    :param tri_p2: Second point of the triangle 
    :type tri_p2: 'mathutils.Vector'
    :param tri_p3: Third point of the triangle 
    :type tri_p3: 'mathutils.Vector'
    :return:  Point on the triangles plane or None if its outside the triangle 
    """
    pass
