pointLocation
Encontra o triângulo ou tetraedro de uma triangulação que contém cada ponto de consulta.
Categoria: Mathematics > Computational Geometry
Sintaxe
ti = pointLocation(TR, P)
Índice do simplex que contém cada linha de P.
[ti, bc] = pointLocation(TR, P)
Também retorna as coordenadas baricêntricas dos pontos nesses simplexes.
Descrição
É uma busca de ponto em triângulo sobre toda a malha. Um ponto sobre uma aresta compartilhada pertence a mais de um triângulo e um deles é retornado. A saída baricêntrica é a base da interpolação linear: multiplique bc pelos valores guardados nos três vértices do triângulo ti para interpolar.
Argumentos de entrada
TR- Um objeto
triangulation,delaunayTriangulationouDelaunayTri. P- Pontos de consulta, um por linha.
Argumentos de saída
ti- Vetor coluna de índices de simplexes. Um ponto fora da triangulação dá
NaN. bc- Matriz de coordenadas baricêntricas, uma linha por ponto.
Exemplo
Localizar um ponto dentro e fora
x = [0 1 1 0 0.5]';
y = [0 0 1 1 0.5]';
DT = delaunayTriangulation(x, y);
[ti, bc] = pointLocation(DT, [0.9 0.5; 5 5])
Saída
ti = 2×1
1
NaN
bc = 2×3
0.2000 0.4000 0.4000
NaN NaN NaN
Veja também
nearestNeighbor cartesianToBarycentric delaunayTriangulation inpolygon