How do i find the intersection points between a surface and a patch?

17 次查看(过去 30 天)
Hello,
I am looking for a way to determine the intersection points between a surface and a patch as in the image. The result should be the (smooth) curve of these intersection points. Anybody who knows how to do this?
Greetings, Rudy

采纳的回答

Unai San Miguel
Unai San Miguel 2018-2-14
It is hard to find the intersection of a surface and a plane (in general), as it is explained here by Patrikalakis et al. And it may be harder to obtain a smooth curve.
But if you can do with a number of points on the (branches of the) curve(s), you can:
  1. Find the scalar function d of the distance from the points on the surface to the plane
  2. Compute the contour lines of d of value 0, keeping the output of the function:
C = contour(x, y, d, [0 0]);
In C you can find all the points on the surface which belong to the intersection, see the documentation here: ContourMatrix property

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Surface and Mesh Plots 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by