周期性の無い3次元の​点を繋ぎ合わせたグラ​フと平面(例えばY=​0)の交点の座標を調​べる方法はありません​か?

7 Ansichten (letzte 30 Tage)
Ryouga Kojima
Ryouga Kojima am 12 Jan. 2023
Kommentiert: Ryouga Kojima am 16 Jan. 2023
matlabで周期性の無い3次元の点を繋ぎ合わせたグラフと平面(例えばY=0)の交点の座標を調べる方法はありませんか? 例えを使って簡単に説明すると、Y=0の平面とあるグラフの交点を取りたいのですが、そのグラフではY=0の所に点がある訳ではなく、Y=-5とY=5にある点同士が繋がってる(線形補間?)感じです。
スプライン補完などでできるのでしょうか?

Akzeptierte Antwort

交感神経優位なあかべぇ
Bearbeitet: 交感神経優位なあかべぇ am 16 Jan. 2023
おそらくあまり単純にはできず、地味に計算していくしかなさそうですね……。
下記は2次元の例(X = 0.5の場合のYデータの計算)ですが、このようなことを3次元でやらないといけないと思います。
x = [-2,-1,1,-1.5,5,6];
y = 0:5;
plot(x,y);
hold on;
crossX = 0.5;
xline(crossX);
over0 = x > crossX;
flg = over0(1);
crossIdx = [];
for idx = 2 : length(over0)
if flg && ~over0(idx)
crossIdx(end + 1) = idx;
flg = false;
elseif ~flg && over0(idx)
crossIdx(end + 1) = idx;
flg = true;
end
end
crossY = zeros(1, length(crossIdx));
for idx = 1 : length(crossIdx)
i = crossIdx(idx);
slope = (y(i) - y(i - 1)) / (x(i) - x(i - 1));
crossY(idx) = slope * (crossX - x(i - 1)) + y(i - 1);
end
crossY
crossY = 1×3
1.7500 2.2000 3.3077
  1 Kommentar
Ryouga Kojima
Ryouga Kojima am 16 Jan. 2023
ありがとうございます。頑張ります!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

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!