Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
import sys
import subprocess
-from moedebug import dbg
+from moedebug import *
from moenp import *
from math import atan2, atan, sqrt
l = findcurve_subproc.stdout.readline()
l = l.rstrip()
dbg('GOT ', l)
+ if not l: vdbg().crashing('findcurve EOF')
l = eval(l)
if l is None: break
for f in _files:
print('// D ', *args, file=f)
f.flush()
+
+class NullVisdebug():
+ def curve(*a, **kw): pass
+ def crashing(*a, **kw): pass
+
+_nullvis = NullVisdebug()
+_vis = [ _nullvis ]
+
+def vdbg():
+ return _vis[0]
+
+def vdbg_enabled():
+ return _vis[0] != _nullvis
+
+def vdbg_enable(vis):
+ _vis[0] = vis
#!/usr/bin/python
+from __future__ import print_function
+
import signal
signal.signal(signal.SIGINT, signal.SIG_DFL)
from visual import *
from bezier import BezierSegment
import numpy as np
+import sys
from moebius import *
+from moedebug import *
nv = 40
nw = 40
+class Visdebug():
+ def curve(vd, fn):
+ # fn(t) => 3-tuple, 3-list, or similar, for t \elem [0,1]
+ curve(pos = [ list(fn(t)) for t in np.linspace(0,1,11) ])
+ def crashing(vd, msg):
+ print("CRASHING - VISDEBUG", msg, file=sys.stderr)
+ rate(1E-8)
+
+dbg_file(sys.stderr)
+vdbg_enable(Visdebug())
+
m = Moebius(nv, nw)
vs = range(0, nv+1)