円を配列で表す
18 ビュー (過去 30 日間)
古いコメントを表示
質問失礼します。
J = repmat(6.5,710,710);
この一律強度6.5の四角の上に強度650の円(中心,半径=(335,335),135)を描きたいです。
その後ガウス関数をかける予定です。
どの様にすれば描けますか。
どなたか教えてください。
採用された回答
Akira Agata
2022 年 9 月 9 日
いろいろなやり方があると思いますが、たとえばMATLABの基本関数のみを使う以下の方法はいかがでしょうか?
% 初期配列
J = repmat(6.5, 710, 710);
% 中心 (335, 335), 半径 135 の円内のグリッド点を示すインデックスを作成
[xg, yg] = meshgrid(1:710, 1:710);
idx = sqrt((xg-335).^2 + (yg-335).^2) <= 135;
% インデックス上の配列要素を650に置き換える
J(idx) = 650;
% 確認
imshow(J, [])
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Resizing and Reshaping Matrices についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!