function bezier p1 = [0;0] p2 = [1;1] p3 = [2;1] p4 = [1;3] plotbezier(p1,p2,p3,p4); end function plotbezier(p1,p2,p3,p4) npts = 50; dt = 1/npts; p = zeros(2,npts); b = 3*(p2-p1) c = 3*(p3-p2)-b; d = p4 - p1 - b -c; for i=1:npts t=i*dt; p(1:2,i) = p1 + b*t + c*t^2 + d*t^3; end plot(p(1,1:npts),p(2,1:npts),'b'); hold on plot([p1(1),p2(1)],[p1(2),p2(2)],'r'); plot([p3(1),p4(1)],[p3(2),p4(2)],'g'); hold off end