diff options
Diffstat (limited to 'src/live_effects/spiro.cpp')
| -rw-r--r-- | src/live_effects/spiro.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/live_effects/spiro.cpp b/src/live_effects/spiro.cpp index 612348ab8..abc9c94ca 100644 --- a/src/live_effects/spiro.cpp +++ b/src/live_effects/spiro.cpp @@ -731,6 +731,10 @@ spiro_iter(spiro_seg *s, bandmat *m, int *perm, double *v, int n) add_mat_line(m, v, derivs[1][1], -ends[1][1], 1, j, jk0r, jinc, nmat); add_mat_line(m, v, derivs[2][1], -ends[1][2], 1, j, jk1r, jinc, nmat); add_mat_line(m, v, derivs[3][1], -ends[1][3], 1, j, jk2r, jinc, nmat); + if (jthl >= 0) + v[jthl] = mod_2pi(v[jthl]); + if (jthr >= 0) + v[jthr] = mod_2pi(v[jthr]); j += jinc; } if (cyclic) { @@ -771,6 +775,7 @@ spiro_iter(spiro_seg *s, bandmat *m, int *perm, double *v, int n) s[i].ks[k] += dk; norm += dk * dk; } + s[i].ks[0] = 2.0*mod_2pi(s[i].ks[0]/2.0); } return norm; } |
