Barycentric Coordinates of a spherical triangle

조회 수: 16 (최근 30일)
Alec Day
Alec Day 2018년 7월 10일
댓글: Sterling Baird 2020년 7월 2일
Hello,
If I have a triangle constructed in 2D with the vertices (x1,y1) (x2,y2) (x3,y3) it is straight forward to find the barycentric coordinate of any point P within the triangle using tsearchn or equivalent and then translate this coordinate to any other 2D triangle using barycentricToCartesian.m
However what I would like to do is to relate any point P inside a 2D triangle to a 3D vector n for a point in a spherical triangle mapped onto a unit sphere. I think a method would be to obtain the barycentric coordinates of any point in a spherical triangle to relate the two triangles, but i'm not sure if this exists.
  댓글 수: 1
Sterling Baird
Sterling Baird 2020년 7월 2일
See these two papers:
[1] T. Langer, A. Belyaev, H.-P. Seidel, Spherical barycentric coordinates, Proc. Fourth Eurographics Symp. Geom. Process. (2006) 81–88. http://portal.acm.org/citation.cfm?id=1281957.1281968.
[2] K. Lei, D. Qi, X. Tian, A new coordinate system for constructing spherical grid systems, Appl. Sci. 10 (2020). https://doi.org/10.3390/app10020655.
The first one has the advantage of interpolation for linear precision, the second approach is better suited to defining spherical triangular grids on spheres. Hyperspheres are fair game for the first, and probably for the second too..

댓글을 달려면 로그인하십시오.

답변 (1개)

Anton Semechko
Anton Semechko 2018년 7월 10일
편집: Anton Semechko 2018년 7월 10일
This can be done in four steps:
1) Compute linear transformation (T) that maps triangle A to its counterpart B on the sphere.
2) Use T to map point of interest Pa in A to B to get Pb=T(Pa)
3) Project Pb onto the sphere to get pb=Pb/norm(Pb)
4) Solve for spherical barycentric coordinates (u,v,w) of pb relative to B. Do to this suppose Q=[q1 q2 q3] is a 3-by-3 matrix containing coordinates of the vertices of B along columns, then p2(:)=Q*[u;v;w]. Note that unlike planar barycentric coordinates which always sum to unity, sum of the spherical barycentric coordinates can exceed one.

카테고리

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