How can I find the set of vertices of hexagons which are adjacent to a random point?
古いコメントを表示
I have a set of hexagons whose blue coordinates are known:

I have a random red point and I need to know the 4 (in some cases it would be 3) points which are immediately adjacent to it. These points are contained in the black box shown for illustration.
I tried to sort the blue points by measuring distances but I keep getting extra points (shown by black arrows) or missing the required points.
1 件のコメント
Matt J
2024 年 8 月 13 日
Please give us the points so we can demonstrate solutions.
採用された回答
その他の回答 (1 件)
Mario Malic
2024 年 8 月 10 日
Hi,
here's some code to give you an idea
X = rand(3,3);
Y = rand(3,3);
pts = [X(:), Y(:)];
distance = squareform(pdist(pts)); % symmetric matrix that contains distances between points
% distance between pt3 and all other pts
[~, idx] = sort(distance(:, 3));
closestPts = idx(2:5) % first one is distance between pt3 and pt3 so we ignore that
2 件のコメント
Aravind Varma Dantuluri
2024 年 8 月 12 日
Mario Malic
2024 年 8 月 12 日
That random point is just an example, it can be arbitrary!
カテゴリ
ヘルプ センター および File Exchange で Random Number Generation についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

