Distância entre 2 System.Drawing.Point
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!
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