13 views (last 30 days)

Show older comments

KSSV
on 2 Feb 2017

clear all ;

data = imread('fit.png') ;

h1 = axes ;

image([0 1], [0 1],data);

hold on

%%draw square

P = ginput(4) ;

pts = [P ; P(1,:)] ;

plot(pts(:,1),pts(:,2),'k') ;

click at the points you want to draw square/ trapezium or rectangle when cross is popped out.

KSSV
on 2 Feb 2017

When you have the data in hand it shall be more easy to plot what you want.

clc

clear all ;

x=0:1:20;

y = abs(sqrt(x));

%[xx,yy] = pol2cart(x,y);

k = convhull(x, y);

xch = x(k);

ych = y(k);

%[xCH, yCH] = cart2pol(xch, ych);

plot(xch, ych, 'ro-',x,y,'b*');

x0 = min(x) ; x1 = max(x) ;

y0 = min(y) ; y1 = max(y) ;

%%square

pts = [x0 y0 ; x0 y1 ; x1 y1 ; x1 y0 ; x0 y0] ;

hold on

plot(pts(:,1),pts(:,2),'r')

%%circel

c0 = 0.5*[x0+x1 y0+y1] ;

R = 10 ;

th = linspace(0,2*pi) ;

xc = c0(1)+R*cos(th) ;

yc = c0(2)+R*sin(th) ;

plot(xc,yc,'r')

axis equal

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!