polliwog/plane/functions.py
def plane_normal_from_points(points):
    """
    Given a set of three points, compute the normal of the plane which
    passes through them. Also works on stacked inputs (i.e. many sets
    of three points).
    """
    points, _, transform_result = columnize(points, (-1, 3, 3), name="points")

    p1s = points[:, 0]
    p2s = points[:, 1]
    p3s = points[:, 2]
    v1s = p2s - p1s
    v2s = p3s - p1s
    unit_normals = vg.normalize(vg.cross(v1s, v2s))

    return transform_result(unit_normals)

    Given a set of three points, compute the normal of the plane which
    passes through them. Also works on stacked inputs (i.e. many sets
    of three points).
    
Given a set of three points, compute the normal of the plane which
passes through them. Also works on stacked inputs .
Given a set of three points compute the normal of the plane which passes through them . Also works on stacked inputs .
def plane_normal_from_points(points):
    points, _, transform_result = columnize(points, (-1, 3, 3), name="points")
    p1s = points[:, 0]
    p2s = points[:, 1]
    p3s = points[:, 2]
    v1s = p2s - p1s
    v2s = p3s - p1s
    unit_normals = vg.normalize(vg.cross(v1s, v2s))
    return transform_result(unit_normals)
def plane_normal_from_points ( points ) : points , _ , transform_result = columnize ( points , ( - 1 , 3 , 3 ) , name = "points" ) p1s = points [ : , 0 ] p2s = points [ : , 1 ] p3s = points [ : , 2 ] v1s = p2s - p1s v2s = p3s - p1s unit_normals = vg . normalize ( vg . cross ( v1s , v2s ) ) return transform_result ( unit_normals )
Given a set of three points, compute the normal of the plane which
passes through them.
Given a set of three points compute the normal of the plane which passes through them .
"""
    Given a set of three points, compute the normal of the plane which
    passes through them. Also works on stacked inputs (i.e. many sets
    of three points).
    """
points