Mercurial > repos > public > sbplib
changeset 1103:7f4aae76e06a feature/dataspline
In Curve.arcLengthParametrization(), upgrade linear interpolation to monotonicity-preserving cubic splines.
author | Martin Almquist <malmquist@stanford.edu> |
---|---|
date | Tue, 09 Apr 2019 13:19:55 -0700 |
parents | 36d092a00040 |
children | 2a1f6cea6062 |
files | +parametrization/Curve.m |
diffstat | 1 files changed, 2 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
diff -r 36d092a00040 -r 7f4aae76e06a +parametrization/Curve.m --- a/+parametrization/Curve.m Tue Apr 09 09:50:44 2019 -0700 +++ b/+parametrization/Curve.m Tue Apr 09 13:19:55 2019 -0700 @@ -104,8 +104,8 @@ tvec = linspace(0,1,N); arcVec = obj.arcLength(0,tvec); - % t as a function of arcLength. Use linear interpolation to preserve monotonicity. - tFunc = @(arcLen)interp1(arcVec,tvec,arcLen, 'linear', 'extrap'); + % t as a function of arcLength. Monotonicity-preserving cubic splines. + tFunc = @(arcLen) pchip(arcVec,tvec,arcLen); L = obj.arcLength(0,1); arcPar = @(s) tFunc(s*L);