Midpoint method to obtain geodesics in 3D
antoni.parellada shared this question 2 years ago
I am trying to minimize the distance between two points on a surface in 3D through the midpoint method, which is described here, and could be implemented with the following chunk of code (or pseudocode) in MatLab:
Program 1 Midpoint Search // Iteratively refines a given path // S: a surface I^2--->R^3 // pts: a sequence of points in I^2 // n: the number of iterations function Midpoint_Search(S, pts, n) for n iterations for i=1 to length of pts // Map the points onto S pts2(i) = S(pts(i)) for i=1 to length of pts // Take midpoints midpts(i) = (pts2(i) + pts2(i+1)) * 0.5 for i=1 to length of midpts // find the closest point on the surface to midpts(i) pts(i) = argmin_p ||S(p)-S(midpts(i))|| // argmin can be done in matlab using fminsearch.Thanks to @mathmagic I have now a ggb file (attached) that calculates the distance between two points on a surface, and it seems like iterating to find the shortest distance between those two points could be feasible if there is some sort of way to create a loop and a way to find a point on the surface closest to the average of two vectors, which seems to be given by the function fminsearch in matlab.
Files: Hanover geodesi...