4 포인트가 직사각형을 이루고 있으며, 사용자가 임의의 포인트를 이동하고 사각형을 각도 (센터 포인트를 중심으로 각 포인트를 회전 시킴)로 회전하도록 허용하고 있습니다. . 거의 완벽한 Rectangle 모양으로 유지됩니다 (PointF 정밀도가 허용하는 한). 다음은 네 가지 점에서 그려 내 "사각형"의 예 :다각형의 4 포인트에서 너비와 높이를 계산합니다.
을 그러나, 나는이 점 사이의 폭과 높이를 얻을 수 있어야합니다. 사각형이 회전하지 않을 때이 간단하지만 내가 그것을 회전하면 내 수학은 여기에 빨간색 테두리로 표시 폭과 높이 반환
내가 (위에서 시계 방향으로 점의 순서를 알고 가정을 -left 예를 들어), 그들이 나타내는 사각형의 너비와 높이를 검색하려면 어떻게해야합니까?
이것은 실제로 더 많은 기하학 문제입니다. 처음 세 점을 취해 가장자리의 길이를 계산할 수 있습니다. 정밀도를 약간 높이려면 다른 두 모서리 길이로 길이를 평균 할 수 있습니다. 수식은 http://en.wikipedia.org/wiki/Pythagorean_theorem –
을 참조하십시오. 회전 된 사각형의 "너비"를 정확히 정의 할 수 있습니까? –
회전되지 않은 사각형과 같습니다. 마찬가지로 너비가 100 인 직사각형을 4 포인트 씩 가져 와서 회전하면 너비가 변경되지 않아야합니다. 직사각형의 회전에 상관없이 100의 값을 계산할 수 있어야합니다. –