Cálculo da distância média entre duas linhas não paralelas?


8

Atualmente, estou trabalhando na criação de um modelo de dados que permita ao analista digitalizar duas linhas não paralelas de aproximadamente o mesmo comprimento. Atualmente, a metodologia é dividir as linhas em 11 pontos e média das distâncias entre as duas linhas.

Alguma sugestão sobre como simplificar esse método e / ou automatizar o processo, lembre-se de que estou criando o esquema para ter um alcance total para alterar o que é e como está sendo gravado?

Anexado é um exemplo do problema. insira a descrição da imagem aqui


Qual é a mágica por trás do número 11? Também faria 10, 8 ou 5 linhas? Na verdade, o número de linhas deve depender do comprimento das duas linhas?
22815 ulrich

Existe alguma suposição de que a distância deve ser aproximadamente ortogonal à direção das duas linhas? Por exemplo, o ponto 7b pode estar mais próximo de 8a do que 8b. Você deseja obter a distância para os pontos mais próximos ou para o ponto correspondente (7a a 7b, 8a a 8b, etc.)?
User55937

Respostas:


5

Se você tiver controle total sobre o algoritmo e a implementação, para uma aproximação aproximada, provavelmente

  1. Obtenha as coordenadas de alguns pontos em suas polilinhas na mesma distância do respectivo ponto inicial
  2. Aproxime uma linha reta através dos pontos de cada polilinha ( https://en.wikipedia.org/wiki/Simple_linear_regression )
  3. Obtenha a distância entre os pontos nas novas linhas, correspondentes a 1a e 1b, bem como 11a e 11b do seu gráfico e calcule a média

insira a descrição da imagem aqui

Nota: trata-se de um algoritmo, não de implementação específica.


1
Eu acho que a distância média entre as duas linhas azuis (porque são retas) é na verdade apenas o comprimento médio das duas linhas amarelas. Se fosse esse o caso, não haveria necessidade de discretizar a linha em pontos.
User55937

Sim, é esse o caso. Mas você ainda precisa da regressão linear das linhas pretas. Considere duas linhas pretas convexas, começando próximas umas das outras, afastando-se umas das outras e aproximando-se novamente. Se você apenas levar em consideração a distância entre os vértices inicial e final das linhas originais, terá distância média não interessante.
ulrich

Bondade! Não li sua resposta o suficiente. Acabei de declarar seu terceiro passo.
User55937

2

1) crie um polígono com suas duas linhas, a linha entre 1a e 1B e a linha entre 11a e 11b

2) crie a linha central

3) divida a área do polígono pelo comprimento na linha central. Observe que você pode usar a média do comprimento das duas linhas como uma aproximação, se não desejar calcular a linha central.


O que exatamente você quer dizer com linha central? Como você conseguiria, aproximadamente?
211 ulrich

veja aqui o que quero dizer gis.stackexchange.com/questions/29863/… Para o algoritmo, você pode mesclar os polígonos de Thiessen derivados dos vértices de cada linha.
Radouxju 3/09/15

Não tenho certeza se é isso que estou pedindo, preciso saber a distância média geral entre a linha a & b, ou talvez esteja perdendo o que você está dizendo.
Mark McCallister

a largura média do seu polígono é a distância média entre as linhas. Basta imaginar que você tomar uma infinidade de pontos ...
radouxju

+1. Esta é a resposta correta. Divida por média de 2 linhas
FelixIP

0

Então, experimentei "Calcular a faixa de distância da contagem de vizinhos", uma ferramenta de estatística espacial e ela parece estar funcionando. Faça mais alguns testes para executar e, com sorte, isso responderá a conta. Obrigado por todo o feedback até agora.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.