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 set length 7.7885445456401925