Notice
Recent Posts
Recent Comments
Link
WinGyu_coder
Python, 파이썬 3개의 점 좌표에 대한 각도 구하기, 모듈 math 사용하기 본문
안녕하세요, 파이썬 math 모듈을 사용해서 3개의 좌표에 대한 각도를 구해보겠습니다.
A, B, C 좌표를 가지고 있을때 X 좌표를 계산하는 방법입니다.
좌표는 각각 X 가로, Y 세로를 가지고 있습니다.
ex) print(a) -> [400, 200] # A 좌표
아래 코드는 3개의 좌표를 가지고 있었을때 B 좌표를 중간으로 X각도를 구하는 방법입니다.
def angle_between_three_points(A, B, C):
try:
BA = [A[0]-B[0], A[1]-B[1]]
BC = [C[0]-B[0], C[1]-B[1]]
dot_product = BA[0]*BC[0] + BA[1]*BC[1]
magnitude_BA = math.sqrt(BA[0]**2 + BA[1]**2)
magnitude_BC = math.sqrt(BC[0]**2 + BC[1]**2)
cos_theta = dot_product / (magnitude_BA * magnitude_BC)
angle = math.acos(cos_theta)
return math.degrees(angle)
except:
return 180
if __name__== "__main__":
A = (200, 100)
B = (200, 200)
C = (300, 200)
print(angle_between_three_points(A, B, C))
맨 아래는 임시값을 넣어두었고 실행결과 90.0도로 정상 작동합니다.
'Python파이썬' 카테고리의 다른 글
Python, 파이썬으로 실시간 스트리밍 구현하기, RTMP, FFmpeg 사용 방법 (0) | 2024.03.19 |
---|---|
Python CV 컴퓨터 비전, 다각형 그리기 및 접근 여부 알아내기 (0) | 2023.11.16 |
Python 난독화 및 암호화, Pyarmor 사용하기 (유료버전) (2) | 2023.10.10 |
Django 파일 업로드 DRF, parser_classes (0) | 2023.10.01 |
Pycharm에 Black (포매터)formatter 적용하기 (0) | 2023.09.28 |