alphaShape
Cria uma região que envolve um conjunto de pontos 2-D ou 3-D, controlada por um raio alpha.
Categoria: Mathematics > Computational Geometry
Sintaxe
shp = alphaShape(x, y)
Cria uma alpha shape 2-D a partir de vetores coluna de coordenadas, usando o alpha padrão.
shp = alphaShape(x, y, z)
Cria uma alpha shape 3-D.
shp = alphaShape(P)
Recebe os pontos como linhas da matriz P (duas ou três colunas).
shp = alphaShape(___, alpha)
Define o raio alpha explicitamente.
Descrição
Uma alpha shape generaliza o fecho convexo. Imagina-se um disco (ou esfera) de raio alpha rolando em volta do conjunto de pontos, e a forma é o que os pontos delimitam sem que o disco passe pelos vãos. Com alpha grande, o resultado é o fecho convexo; diminuir alpha permite que o contorno entre nas partes côncavas e até se divida em várias regiões.
O objeto pode ser consultado com funções como area, perimeter, inShape, numRegions, criticalAlpha e boundaryFacets. A propriedade Alpha pode ser reatribuída para mudar a forma depois.
Argumentos de entrada
x, y, z- Coordenadas dos pontos, como vetores coluna de mesmo comprimento.
P- Matriz com um ponto por linha.
alpha- Raio escalar não negativo. Valores pequenos dão uma forma justa, possivelmente fragmentada; valores muito grandes dão o fecho convexo.
Argumentos de saída
shp- Um objeto
alphaShapecom as propriedadesPoints,Alpha,HoleThresholdeRegionThreshold.
Exemplo
Alpha shape de um quadrado com ponto central
x = [0 1 1 0 0.5]';
y = [0 0 1 1 0.5]';
shp = alphaShape(x, y, 1);
disp(area(shp))
disp(perimeter(shp))
disp(numRegions(shp))
1
4
1
Veja também
boundary convhull criticalAlpha inShape delaunayTriangulation