turningdist

Distância da função de giro entre as fronteiras de dois polyshape.

Categoria: Mathematics > Computational Geometry

Sintaxe

d = turningdist(PG1, PG2)

Retorna uma medida de dissimilaridade entre as formas de PG1 e PG2.

Descrição

A distância compara as funções de giro dos dois polígonos: a direção da aresta em função do comprimento de arco ao longo da fronteira, com os comprimentos normalizados pelo perímetro. A medida pretende ignorar translação e escala uniforme, de modo que foca a forma, não a posição ou o tamanho.

Os dois polyshape precisam ter exatamente uma fronteira; caso contrário, ocorre um erro.

Argumentos de entrada

PG1, PG2
Objetos polyshape, cada um com uma única fronteira.

Argumentos de saída

d
Escalar não negativo. É 0 para formas idênticas e cresce conforme as formas diferem.

Exemplo

Quadrado contra retângulo

P = polyshape([0 1 1 0], [0 0 1 1]);
Q = polyshape([0 2 2 0], [0 0 1 1]);
d1 = turningdist(P, P)
d2 = turningdist(P, Q)
Saída
d1 = 0
d2 = 0.5854

Veja também

polyshape area perimeter translate