Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- github.io
- 의료AI
- 수학to파이썬
- 수학
- 대학원 랭킹
- ai 랭킹
- sudo apt-get update
- 티스토리 행렬 오류
- MedicalAI
- 파이썬 시각화
- 썰풀이
- cs 랭킹
- error
- 미국 대학원 진학
- 미국 대학원
- Jekyll
- 미국 박사 궁금증
- 미국 유학
- 파이썬
- 미국 석사
- 우분투
- 개인홈페이지
- 원격 서버 파일 다운 받기
- sudo apt install
- 미국 대학원 준비 타임라인
- MLB 경기 관람
- 우분투 오류 해결
- 의료인공지능
- al-folio
- 미국 대학원 준비
Archives
- Today
- Total
Yehyun Suh
[수학 to 파이썬] 파이썬으로 두 직선 사이의 각도 구하기 본문
위와 같이 두 직선이 주어졌을 때, 두 직선 사이의 각도 $\theta$는 어떻게 구할까?
1. 두 직선 사이의 각도 구하기
$x$축과 평행한 직선 하나를 긋고 $y=ax+b$의 기울기를 표현하는 $\theta_1$과 $y=cx+d$의 기울기를 표현하는 $\theta_2$를 보면, $$\theta=180-\theta_1+\theta_2$$
인 것을 알 수 있다. 이때 $\theta_1$은 $$\tan{\theta_1}=a \\ \theta_1=\arctan{a}$$이며, $\theta_2$는 $$\tan{\theta_2}=c \\ \theta_2=\arctan{c}$$
로 구할 수 있다. 따라서 두 직선 사이의 각도 $\theta$는 $$\theta=180-\arctan{a}+\arctan{c}$$이다.
2. 코드
만약 math 라이브러리를 다운 받은 적이 없다면, 터미널에서
pip3 install math
를 실행하여 라이브러리를 다운 받는다. $theta$는 두 선분 사이의 각도 중 더 작은 것이라고 가정하고 작성하였다.
import math
def angle_between_two_lines(slope1: float, slope2: float) -> float:
"""
두 선분 사이의 각도를 반환하는 함수
Args:
slope1 (float): 첫번째 선분의 기울기
slope2 (float): 두번째 선분의 기울기
Return:
두 선분 사이의 각도 (float)
"""
theta_1 = math.degrees(math.atan(slope1))
theta_2 = math.degrees(math.atan(slope2))
if theta_1 > theta_2:
theta = 180 - theta_1 + theta_2
else:
theta = 180 - theta_2 + theta_1
if theta < 90:
return theta
else:
return 180 - theta
'파이썬 > 수학 to 파이썬' 카테고리의 다른 글
[수학 to 파이썬] 3D Coordinate Transformation (3차원 좌표 변환) (0) | 2023.11.28 |
---|---|
[수학 to 파이썬] 원의 기울어진 각도 구하기 (0) | 2023.08.10 |
[수학 to 파이썬] 파이썬으로 세 점 사이의 각도 구하기 (2) (0) | 2023.08.02 |
[수학 to 파이썬] 파이썬으로 세 점 사이의 각도 구하기 (1) (0) | 2023.08.01 |
[수학 to 파이썬] 파이썬으로 두 직선의 교차점 구하기 (0) | 2023.08.01 |