*** drawPS.c.orig Fri Jan 7 21:58:32 2000 --- drawPS.c Fri Jan 7 21:58:38 2000 *************** *** 471,477 **** void flushSpline P1C(char *, cp) { /* as exact as psdit!!! */ ! register long i, dxi, dyi, dxi1, dyi1; if (*cp) { float inchesPerDash; --- 471,477 ---- void flushSpline P1C(char *, cp) { /* as exact as psdit!!! */ ! register long i, px, py, dx, dy; if (*cp) { float inchesPerDash; *************** *** 508,530 **** numout((integer)hconvPS(xx[1])); numout((integer)vconvPS(yy[1])); cmdout(MOVETO); ! numout((integer)convPS((xx[2]-xx[1])/2)); ! numout((integer)convPS((yy[2]-yy[1])/2)); cmdout(RLINETO); for (i=2; i < pathLen; i++) { ! dxi = convPS(xx[i] - xx[i-1]); ! dyi = convVPS(yy[i] - yy[i-1]); ! dxi1 = convPS(xx[i+1] - xx[i]); ! dyi1 = convVPS(yy[i+1] - yy[i]); ! ! numout((integer)dxi/3); ! numout((integer)dyi/3); ! numout((integer)(3*dxi+dxi1)/6); ! numout((integer)(3*dyi+dyi1)/6); ! numout((integer)(dxi+dxi1)/2); ! numout((integer)(dyi+dyi1)/2); cmdout(RCURVETO); } --- 508,531 ---- numout((integer)hconvPS(xx[1])); numout((integer)vconvPS(yy[1])); cmdout(MOVETO); ! px = (integer)convPS(xx[1]); ! py = (integer)convPS(yy[1]); ! numout(dx = (integer)convPS((xx[2]+xx[1])/2) - px); ! numout(dy = (integer)convPS((yy[2]+yy[1])/2) - py); ! px += dx; ! py += dy; cmdout(RLINETO); for (i=2; i < pathLen; i++) { ! numout((integer)convPS((xx[i-1]+5*xx[i])/6) - px); ! numout((integer)convPS((yy[i-1]+5*yy[i])/6) - py); ! numout((integer)convPS((5*xx[i]+xx[i+1])/6) - px); ! numout((integer)convPS((5*yy[i]+yy[i+1])/6) - py); ! numout(dx = (integer)convPS((xx[i]+xx[i+1])/2) - px); ! numout(dy = (integer)convPS((yy[i]+yy[i+1])/2) - py); ! px += dx; ! py += dy; cmdout(RCURVETO); }