catmull-rom splines; polyline offsetting