print "dir=", dir
        (cl,ccp,cp,d) = cutter.intersect_sphere_line(dir, edge)
        print "cp=", cp
        print "ccp=", ccp
        print "d=", d
        print "cl=", cl
        exit()

    if False:
        cutter = SphericalCutter(1, Point(-10,0,0))
        edge = Line(Point(0,-5,1),Point(3,+5,1))
        dir = Point(1,-0.2,0)
        print "cutter=", cutter
        print "edge=", edge
        print "dir=", dir
        (cl,ccp,cp,d) = cutter.intersect_cylinder_line(dir, edge)
        print "cp=", cp
        print "ccp=", ccp
        print "d=", d
        print "cl=", cl

    dir = Point(0,0,-1)
    c = SphericalCutter(1, Point(0,0,6))
    #c = SphericalCutter(1, Point(-2.2,0.2,6))
    #c = SphericalCutter(1, Point(-1.7,0.5,6))
    print "c=", c
    t = Triangle(Point(-2,0,2), Point(2,1,3), Point(2,-1,4))
    #t = Triangle(Point(-2,0,2), Point(2,-1,4), Point(2,1,3))
    #t = Triangle(Point(2,0,4), Point(2,-1,2), Point(2,1,2))
    #t = Triangle(Point(2,0,2), Point(-2,1,2), Point(-2,-1,2))
    print "t=", t
        print "dir=", dir
        (cl, ccp, cp, d) = cutter.intersect_sphere_line(dir, edge)
        print "cp=", cp
        print "ccp=", ccp
        print "d=", d
        print "cl=", cl
        exit()

    if False:
        cutter = SphericalCutter(1, Point(-10, 0, 0))
        edge = Line(Point(0, -5, 1), Point(3, +5, 1))
        dir = Point(1, -0.2, 0)
        print "cutter=", cutter
        print "edge=", edge
        print "dir=", dir
        (cl, ccp, cp, d) = cutter.intersect_cylinder_line(dir, edge)
        print "cp=", cp
        print "ccp=", ccp
        print "d=", d
        print "cl=", cl

    dir = Point(0, 0, -1)
    c = SphericalCutter(1, Point(0, 0, 6))
    #c = SphericalCutter(1, Point(-2.2,0.2,6))
    #c = SphericalCutter(1, Point(-1.7,0.5,6))
    print "c=", c
    t = Triangle(Point(-2, 0, 2), Point(2, 1, 3), Point(2, -1, 4))
    #t = Triangle(Point(-2,0,2), Point(2,-1,4), Point(2,1,3))
    #t = Triangle(Point(2,0,4), Point(2,-1,2), Point(2,1,2))
    #t = Triangle(Point(2,0,2), Point(-2,1,2), Point(-2,-1,2))
    print "t=", t