u = readmatrix('upper.txt');
l = readmatrix('lower.txt');
x = [flipud(u(:,2));flipud(l(:,2))];
y = [flipud(u(:,3));flipud(l(:,3))];
[xc,yc] = centroid(polyin);
common = sqrt( (Ixx - Iyy)^2 + 4 * Ixy^2);
ra = sqrt(2) * sqrt(Ixx + Iyy + common);
rb = sqrt(2) * sqrt(Ixx + Iyy - common);
theta = atan2(2 * Ixy, Ixx - Iyy) / 2;
theta_deg = 180/pi*theta;
plot(x,y,'r*-',xc,yc,'dk',xl,yl,'b--');
par = CircleFitByTaubin([x(ind) y(ind)]);
disp(['----------------------------']);
disp([' Re = ' num2str(Re) ':']);
disp([' xc = ' num2str(xc) ':']);
disp([' yc = ' num2str(yc) ':']);
disp(['----------------------------']);
plot(x(ind), y(ind),'db','MarkerSize',10)
title(' measured fitted circles')
text(xc-Re*0.5,yc + 0.75*Re,sprintf('center (%g , %g ); R=%g',xc,yc,Re))
[L2,R2,K2] = curvature([x y]);
h = plot(x,y); grid on; axis equal
title('2D curve with curvature vectors')
quiver(x,y,K2(:,1),K2(:,2));
scatter(x,y,25,R2,'filled');
title('2D curve with radius values ')