Pergunta

Como posso encontrar a distância entre 2 System.Drawing.Point?

Eu pesquisei e não encontrá-lo ...

Dim p1 As New Point(0, 10)
Dim p2 As New Point(10, 10)
Dim distance = ??

Neste caso, deve ser 10, mas o que dizer aqui?

Dim p1 As New Point(124, 942)
Dim p2 As New Point(34, 772)
Dim distance = ??

Obrigado!

Foi útil?

Solução

Distância fórmula: sqrt ((x2 - x1) ^ 2 + (y2 - y1) ^ 2)

Outras dicas

Point p1 = new Point(7, 5);
Point p2 = new Point(26, 29);
double distance = Math.Round(Math.Sqrt(Math.Pow((p2.X - p1.X), 2) + Math.Pow((p2.Y - p1.Y), 2)), 1);

Se você quer saber onde a fórmula que as pessoas estão dando-lhe vem, isso é generalizado como A teorema de Pitágoras .

Pseudocódigo:

SquareRoot(Square(p1.x - p2.x)+Square(p1.y-p2.y))
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top