How to fit a trapezium or a square or an ellipse around this? Is there any way ?
10 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/160334/image.png)
2 comentarios
KSSV
el 2 de Feb. de 2017
Where you want to fit? question is not clear. You want to fit on the attached image?
Respuestas (1)
KSSV
el 2 de Feb. de 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.
2 comentarios
KSSV
el 2 de Feb. de 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
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!