> 백엔드 개발 > C++ > 선과 가로축 사이의 각도를 어떻게 계산할 수 있나요?

선과 가로축 사이의 각도를 어떻게 계산할 수 있나요?

DDD
풀어 주다: 2025-01-14 17:42:44
원래의
471명이 탐색했습니다.

How Can I Calculate the Angle Between a Line and the Horizontal Axis?

직선과 가로축 사이의 각도 계산

프로그래밍에서는 직선과 수평축 사이의 각도를 결정해야 하는 경우가 많습니다. (P1x,P1y) 및 (P2x,P2y)가 양의 사분면을 정의하는 다음 다이어그램을 고려하세요. 방향이 있는 선분. 우리의 목표는 이 선과 수평축 사이의 각도 θ를 찾는 것입니다.

끼워진 각도를 계산하는 단계:

1. 벡터 구성요소 계산: 엔드포인트 간의 차이점을 찾아보세요:

  • deltaY = P2y - P1y
  • deltaX = P2x - P1x

2. arctan2를 사용하여 각도 계산(권장):

  • angleInDegrees = atan2(deltaY, deltaX) * 180 / PI

이 방법은 deltaY 및 deltaX를 고려하여 모든 사분면에서 올바른 각도를 결정하는 atan2 함수를 사용합니다.

3. 대체 방법:

  • 벡터(deltaX, deltaY)를 길이로 나누어 단위 벡터로 처리합니다.
  • deltaX는 각도의 코사인이 되고, deltaY는 각도의 사인이 됩니다.
  • 벡터 길이가 0이면 각도가 없으므로 사인과 코사인이 정의되지 않습니다.

기타 참고 사항:

  • deltaX와 deltaY의 부호에 따라 각도의 사분면이 결정됩니다.
  • atan2(deltaY, deltaX)는 각도를 라디안 단위로 반환합니다. 180 / PI를 곱하여 각도로 변환합니다.

Python 예제 구현:

<code class="language-python">from math import atan2, pi

def get_angle_between_points(x1, y1, x2, y2):
    deltaY = y2 - y1
    deltaX = x2 - x1
    angle_in_radians = atan2(deltaY, deltaX)
    angle_in_degrees = angle_in_radians * 180 / pi
    return angle_in_degrees</code>
로그인 후 복사

이 함수는 4개의 좌표를 받아들이고 각도를 도 단위로 반환합니다.

위 내용은 선과 가로축 사이의 각도를 어떻게 계산할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿