B := proc(n,r, t) binomial(n,r)*(1-t)^(n-r)*t^r; end: Bpoly := proc(n,t) local r; B(n,r,t) $ r=0..n; end: pairs := proc(x,y) local i; [x[i], y[i]] $ i=1..nops(x); end: BezierApprox := proc(x,t) local i,n,u,p; n := nops(x); p := sum(x[i]*B(n-1,i-1,u), i=1..n); subs(u=t/(n-1),p); end: