// this handles the situation where dx*dx or dy*dy is too large to// fit in the 16.16 fixed point formatSplashCoorddxa,dya;dxa=splashAbs(dx);dya=splashAbs(dy);if(dxa==0&&dya==0){return0;}elseif(dxa>dya){returndxa*FixedPoint::sqrt(dya/dxa+1);}else{returndya*FixedPoint::sqrt(dxa/dya+1);}