2次元線形を3次元にプロットする際、仰角をつけてプロットしたいです。
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
以下に示す2次元線形を三次元にプロットし、仰角をつけて表示させたいです。
この場合、どのようにすれば平面の線形に仰角をつけられるでしょうか?
r2 = 30
dot = (0:10:350);
[s,t] = meshgrid((dot/180)*pi, (dot/180)*pi)
er2 = 3
rr2 = r2 + sin(er2*(dot/180)*pi)
xxr2 = rr2 .* cos((dot/180).*pi)
yyr2 = rr2 .* sin((dot/180).*pi)
plot(xxr2,yyr2)
0 Kommentare
Akzeptierte Antwort
Atsushi Ueno
am 16 Mai 2024
下記はY座標をZ座標に転記しただけですが、仰角と距離からZ座標を計算すれば狙い通りになるでしょう。
dot = (0:10:350) / 180 * pi;
xxr2 = (30 + sin(3*dot)) .* cos(dot);
yyr2 = (30 + sin(3*dot)) .* sin(dot);
plot3(xxr2,yyr2,yyr2);
view(45,45);
4 Kommentare
交感神経優位なあかべぇ
am 18 Mai 2024
回転は、hgtransformを使用すると比較的簡単に表現できます。
dot = (0:10:350) / 180 * pi;
xxr2 = (30 + sin(3*dot)) .* cos(dot);
yyr2 = (30 + sin(3*dot)) .* sin(dot);
figure; view(3); hold on; grid on;
axis([-40 40 -40 40 -40 40]);
f = hgtransform('Matrix', makehgtform('yrotate', deg2rad(20))); %y軸を基準に20°回転
plot(f,xxr2,yyr2);
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu ビッグ データの処理 finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!