У меня есть поверхность Z на сетке X-Y, для которой я хочу найти точку пересечения с линией. Я до сих пор этот код для нахождения пересечения:нахождение пересечения прямой с немонотонной произвольной поверхностью?
x_ray = x_source + t * x_dir
y_ray = y_source + t * y_dir
z_ray = z_source + t * z_dir
height_above_plane = @(t) z_source + t * z_dir - interp2(X, Y, Z, ...
x_source + t*x_dir, y_source + t*y_dir)
t_intercept = fzero(height_above_plane, 0);
моя проблема заключается в том, что, когда моя поверхность «волнистой», функция имеет несколько нулевых точек пересечения, и я хочу, чтобы найти минимальный из них. Как я могу это сделать? Спасибо
Что вы называете негладкой поверхностью? Как вы планируете интерполировать его, если он «негладкий»? (Не смешивайте негладкие и немонотонные?) –
Я интерполирую его с помощью interp2. он не является гладким в том смысле, что линия пересекает поверхность несколько раз, потому что поверхность «wiggly» – Nan
Я бы не назвал это негладким. –