2dbsplinecurve b1 3 5 0 4 1 1 2 1 3 1 4 4  0 0  1  1 2  1   2 2  1   2 2  1  3 2  1  4 2  1   5 4  1 
2dcvalue b1 2.0 x y  dx dy 
set delta 0.01
set yvalue [dval y] 
repeat 100 {
    cmovetangent b1 2.0  x $yvalue  dx dy  1
    set yvalue [expr $yvalue + $delta ]
    repaint
}
copy b1 result
checklength result -l 7.7885445456401925