반응형
[파이썬과 STL]
4. 두 점과 평면의 교점 함수
지난시간에 두 점과 평면의 교점을 구한 코드를 가져옵시다.
import numpy as np
#두 점
p=np.array([2,4,5])
q=np.array([-4,-2,-6])
#평면
a=np.array([1,3,2])
N=np.array([2,3,5])
#두 점의 평면의방정식 함수값
P_p=np.dot(N,p)-np.dot(N,a)
P_q=np.dot(N,q)-np.dot(N,a)
#결과, 음수인 경우 교점 존재
result=P_p*P_q
#교점
inter_p=abs(P_q)/(np.abs(P_p)+np.abs(P_q))*p+abs(P_p)/(np.abs(P_p)+np.abs(P_q))*q
이제 함수로 바꿔봅시다. 아래와 같이 바꿨습니다.
def po2pl1(p,q,a,N):
P_p=np.dot(N,p)-np.dot(N,a)
P_q=np.dot(N,q)-np.dot(N,a)
result=P_p*P_q
if result>0:
print("no intersection point")
else :
return abs(P_q)/(np.abs(P_p)+np.abs(P_q))*p+abs(P_p)/(np.abs(P_p)+np.abs(P_q))*q
반응형
'STL > stl- 기초 (numpy stl)' 카테고리의 다른 글
[파이썬과 STL] 5. 두 점과 평면의 교점 함수 사용해보기 (2) | 2020.11.12 |
---|---|
[파이썬과 STL] 3. 두 점과 평면의 교점 (0) | 2020.11.12 |
[파이썬과 STL] 2. STL 데이터 접근하기 (0) | 2020.11.12 |
[파이썬과 STL] 1. STL 불러오기 (0) | 2020.10.15 |
댓글