Python 은 임의의 두 벡터 사이 의 협각 방법 을 계산 합 니 다.

1704 단어 Python벡터협각
그림 에서 보 듯 이 우 리 는 임의의 두 벡터 사이 의 협각 을 계산 해 야 한다.
(그림 속 의 좌표 숫자 는 추정 치 이 며,손 쉽게 주어진 다)

python 코드 는 다음 과 같 습 니 다.

import math 

AB = [1,-3,5,-1]
CD = [4,1,4.5,4.5]
EF = [2,5,-2,6]
PQ = [-3,-4,1,-6]

def angle(v1, v2):
  dx1 = v1[2] - v1[0]
  dy1 = v1[3] - v1[1]
  dx2 = v2[2] - v2[0]
  dy2 = v2[3] - v2[1]
  angle1 = math.atan2(dy1, dx1)
  angle1 = int(angle1 * 180/math.pi)
  # print(angle1)
  angle2 = math.atan2(dy2, dx2)
  angle2 = int(angle2 * 180/math.pi)
  # print(angle2)
  if angle1*angle2 >= 0:
    included_angle = abs(angle1-angle2)
  else:
    included_angle = abs(angle1) + abs(angle2)
    if included_angle > 180:
      included_angle = 360 - included_angle
  return included_angle

ang1 = angle(AB, CD)
print("AB CD   ")
print(ang1)
ang2 = angle(AB, EF)
print("AB EF   ")
print(ang2)
ang3 = angle(AB, PQ)
print("AB PQ   ")
print(ang3)
ang4 = angle(CD, EF)
print("CD EF   ")
print(ang4)
ang5 = angle(CD, PQ)
print("CD PQ   ")
print(ang5)
ang6 = angle(EF, PQ)
print("EF PQ   ")
print(ang6)
결과

AB CD   
55
AB EF   
139
AB PQ   
52
CD EF   
84
CD PQ   
107
EF PQ   
169
이 파 이 썬 은 임의의 양 방향 간 의 협각 방법 을 계산 하 는 것 이 바로 편집장 이 여러분 에 게 공유 한 모든 내용 입 니 다.여러분 에 게 참고 가 되 기 를 바 랍 니 다.여러분 들 도 저 희 를 많이 응원 해 주시 기 바 랍 니 다.

좋은 웹페이지 즐겨찾기