From b33db89bba8e861ed92f64fa30df8a7d5d089e94 Mon Sep 17 00:00:00 2001 From: Ian Jackson Date: Sun, 17 Dec 2017 16:52:30 +0000 Subject: [PATCH] helixish: debugging output Signed-off-by: Ian Jackson --- helixish.py | 6 ++---- moedebug.py | 9 +++++++++ 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/helixish.py b/helixish.py index afba64e..0de7569 100644 --- a/helixish.py +++ b/helixish.py @@ -61,9 +61,7 @@ class HelixishCurve(): dPQplane_basis = np.vstack((dPQplane_basis, [0,0,0,1])) dbg(dPQplane_basis) - for ax in range(0,3): - vdbg().arrow(dPQplane_basis[0:3,3], dPQplane_basis[0:3,ax], - colour= [ c * (1.0 - ax*0.2) for c in (1,1,1) ]) + vdbg().basis(dPQplane_basis) dPQplane_into = np.linalg.inv(dPQplane_basis) dbg(dPQplane_into) @@ -76,7 +74,7 @@ class HelixishCurve(): vdbg_plane = MatrixVisdebug(vdbg(), dPQplane_basis) - dbg('plane:', p_plane_check, dp_plane, dq_plane, q_plane) + dbg('plane p', p_plane_check, 'dp', dp_plane, 'dq', dq_plane, 'q', q_plane) vdbg_plane.arrow(p_plane_check, dp_plane) vdbg_plane.arrow(q_plane, dq_plane) diff --git a/moedebug.py b/moedebug.py index 8c80c00..94eaa58 100644 --- a/moedebug.py +++ b/moedebug.py @@ -23,11 +23,16 @@ class BaseVisdebug(): vd.curve(lambda t: p0 + t * (p1-p0), **kw) def arrow(vd, p, d, **kw): vd.line(p, p+d, **kw) + def basis(vd, basis, hue=(1,1,1)): + for ax in range(0,3): + vd.arrow(basis[0:3,3], basis[0:3,ax], + colour= [ c * (1.0 - ax*0.2) for c in hue ]) class NullVisdebug(): def curve(*a, **kw): pass def line(*a, **kw): pass def arrow(*a, **kw): pass + def basis(*a, **kw): pass def crashing(*a, **kw): pass class MatrixVisdebug(BaseVisdebug): @@ -36,6 +41,10 @@ class MatrixVisdebug(BaseVisdebug): m._matrix = matrix def curve(m, fn, **kw): m._b.curve(lambda t: moenp.augmatmultiply(m._matrix, fn(t)), **kw) + def arrow(m, p, d, **kw): + m._b.arrow(moenp.augmatmultiply(m._matrix, p), + moenp.augmatmultiply(m._matrix, d, 0), + **kw) def crashing(m, *a, **kw): m._b.crashing(*a, **kw) _nullvis = NullVisdebug() -- 2.30.2