Suppose bezier curve have 4 control point $P0$, $P1$, $P2$, $P3$. How to find 2 data point $D1$, $D2$ satisfy the condition the Chord Length Method? The Chord Length Method :
L = |D1-D0| + |D2-D1| +|D3-D2| = d1 + d2 + d3;
t1 = |D1-D0| / L = d1 /L
t2 = |D1-D0| + |D2-D1| / L = (d1+d2)/L
where Di is data point. $D1 = C(t1)$; $D2 = C(t2)$ ; $D0=P1$ ; $D3=P3$ and $t0=0$, $t3 =1$
i have write program but can not solve.Please help me.
p0 = {0, 0};
p1 = {1, 1};
p2 = {2, 0};
p3 = {3, 2};
pts = {p0, p1, p2, p3};
f = BezierFunction[pts];
f1[t1_, t2_] = EuclideanDistance [f[t1],
p0] /(EuclideanDistance [f[t1], p0] + EuclideanDistance [f[t2],
f[t1]] + EuclideanDistance [f[t2], p3]);
f1[t1_, t2_] = (EuclideanDistance [f[t1], p0] +
EuclideanDistance [f[t2], f[t1]] )/(EuclideanDistance [f[t1], p0] +
EuclideanDistance [f[t2], f[t1]] +
EuclideanDistance [f[t2], p3]);
FindRoot[ {f1[t1, t2] == t1, f2[t1, t2] == t2}, {{t1, 0}, {t2, 0}}]
or
NSolve[{f1[t1, t2] == t1, f2[t1, t2] == t2}, {{t1, 0}, {t2, 0}}]
Thansk for read.The chord length method is method of interpolating B-Spline curve. This is referent http://www.cs.mtu.edu/~shene/COURSES/cs3621/NOTES/INT-APP/PARA-chord-length.html
i rewrite mycode
Program find 2 roots but very slowly.How to convert NSolve to FindRoot ?