2 from __future__ import print_function
16 s = ' '.join(map(str,args))
17 for l in s.split('\n'):
18 print('// D ', l, file=f)
21 def vec2dbg(v): return '[%6.3f %6.3f %6.3f]' % tuple(v)
24 def line(vd, p0, p1, **kw):
25 vd.curve(lambda t: p0 + t * (p1-p0), **kw)
26 def arrow(vd, p, d, **kw):
28 def basis(vd, basis, hue=(1,1,1)):
30 vd.arrow(basis[0:3,3], basis[0:3,ax],
31 color= tuple([ c * (1.0 - ax*0.25) for c in hue ]))
34 def curve(*a, **kw): pass
35 def line(*a, **kw): pass
36 def circle(*a, **kw): pass
37 def arrow(*a, **kw): pass
38 def basis(*a, **kw): pass
39 def crashing(*a, **kw): pass
41 class MatrixVisdebug(BaseVisdebug):
42 def __init__(m, base, matrix):
45 def curve(m, fn, **kw):
46 m._b.curve(lambda t: moenp.augmatmultiply(m._matrix, fn(t)), **kw)
47 def circle(m, c, axis, **kw):
48 m._b.circle(moenp.augmatmultiply(m._matrix, c),
49 moenp.augmatmultiply(m._matrix, axis, 0),
51 def arrow(m, p, d, **kw):
52 m._b.arrow(moenp.augmatmultiply(m._matrix, p),
53 moenp.augmatmultiply(m._matrix, d, 0),
55 def crashing(m, *a, **kw): m._b.crashing(*a, **kw)
57 _nullvis = NullVisdebug()
64 return _vis[0] != _nullvis