How to map 2D mesh points on any 3D surface keeping the interpoint distace as it was in 2D surface?

5 ビュー (過去 30 日間)
Say I have these 2D points on the x-axis and y-axis. Now I have a sphere or any other 3D surface. I want to mount these points on that 3D surface. How can I do that ?? Responses are highly appreciated.
  3 件のコメント
DGM
DGM 2023 年 1 月 31 日
Define "distance". I see three possibilities:
  1. euclidean distance as projected to the x-y plane (2D)
  2. euclidean distance in 3D space (chord lengths)
  3. distance on the sphere surface (arc lengths)
Bruno Luong
Bruno Luong 2023 年 3 月 9 日
It is well known that it is not possible mathematicaly to maps two surface preserving the distance if they have diffenet Gaussian curvatures, such as a flat 2D sheet and a sphere.

サインインしてコメントする。

回答 (1 件)

Sarthak
Sarthak 2023 年 3 月 9 日
Hi,
Here are few approaches to project 2D points onto a 3D surface:
  1. Height map projection: You can use MATLAB’s ‘interp2’ function to perform bilinear interpolation of the height values between the grid points.
  2. Ray tracing: You can use MATLAB’s ‘surfnorm’ function to compute the surface normal at any point on the surface
  3. Surface fitting: Use MATLAB’s ‘fit’ function to fit a surface to the points using various fitting methods.

カテゴリ

Help Center および File ExchangeSurface and Mesh Plots についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by