def segmentPlanarSectionIntersection(s0 = "const Dim<3>::Vector&",
                                     s1 = "const Dim<3>::Vector&",
                                     pverts = "const std::vector<Dim<3>::Vector>&",
                                     tol = ("const double", "1.0e-8")):
    """Intersection of a line segment with a polygonal section of a plane.
The line segment is characterized by it's endpoints:     seg = (s0, s1)
The polygonal section of the plane is specified by
a series of points:                                    plane = pverts[0], pverts[1], ...
Note there must be at least 3 non-collinear points, and they
must be passed in in order to draw the polygon.

Return values are a tuple(char, Vector)
       The Vector is the intersection point (if any)
       The char is a code characterizing the intersection:
             "p" -> The segment lies in the plane (plane)
             "d" -> The pverts points do not define a unique plane (degenerate)
             "1" -> The segment intersects the plane properly
             "0" -> The segment does not intersect the plane"""
    return "py::tuple"