how to solve polygon subtract problem?

1 次查看(过去 30 天)
I subtracted green circle from blue circle. and it returned second polygog like a moon.
but what i want to plot is thrid polygon.
how to subtract polygon liks this?
Thanks

采纳的回答

Matt J
Matt J 2022-10-17
编辑:Matt J 2022-10-17
but what i want to plot is thrid polygon.
Plot the original polygon overlaid on top of the crescent (moon), but make the original polygon transparent.
p1=nsidedpoly(1000);
p2=nsidedpoly(1000,'Center',[1,0]);
p3=subtract(p1,p2);
plot(p3); hold on
plot(p1,'FaceAlpha',0)

更多回答(1 个)

Matt J
Matt J 2022-10-17
编辑:Matt J 2022-10-17
Express the 2 regions as a polyshape vector:
p1=nsidedpoly(1000);
p2=nsidedpoly(1000,'Center',[1,0]);
p3=subtract(p1,p2);
p4=intersect(p1,p2);
pFinal=[p3,p4];
h=plot(pFinal);
h(2).FaceColor='none';

类别

Help CenterFile Exchange 中查找有关 Elementary Polygons 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by