How to plot random shapes within hexagon?

4 次查看(过去 30 天)
Hi ! Urgent Help please. I have plotted two overlapping hexagons, inside them points are randomly generated. I have to sectorize the whole area of hexagons into smaller regions( these regions are random shapes). previously I did this in this way(as in attached figure). Now instead of this (these smaller hexagons inside big ones) i need random shapes. I have plotted a random shape by using the following code:
degree = 5;
numPoints = 1000;
blobWidth = 5;
theta = 0:(2*pi)/(numPoints-1):2*pi;
coeffs = rand(degree,1);
rho = zeros(size(theta));
for i = 1:degree
rho = rho + coeffs(i)*sin(i*theta);
end
phase = rand*2*pi;
[x,y] = pol2cart(theta+phase, rho+blobWidth);
plot(x,y)
Using this code i get a random shape. I need to plot this type of multiple shapes adjacent to each other( no shape overlap other)
within the area of hexagons, but am not able to do this. kindly help me out. Thank You

回答(1 个)

Mahamod ISMAIL
Mahamod ISMAIL 2017-8-5
close all clear all
degree = 5; numPoints = 1000; blobWidth = 5; theta = 0:(2*pi)/(numPoints-1):2*pi; coeffs = rand(degree,1); rho = zeros(size(theta)); for i = 1:degree rho = rho + coeffs(i)*sin(i*theta); end phase = rand*2*pi; [x,y] = pol2cart(theta+phase, rho+blobWidth); plot(x,y); hold on
plot(x+3,y-2)

类别

Help CenterFile Exchange 中查找有关 Random Number Generation 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by