카테고리 없음

[FDF] 4점을 이용한 교점찾기

https://www.desmos.com/calculator/x1ybyqxyou

여기 위에 거의다 정리해 놧다 이거 풀이식까지 써봣는데 햇갈릴수 있음 천천히 보면 이해된다

 

 

x를 구하는 식이다

$\ x=\ \frac{\left(x_{1}-x_{2}\right)\left(\ y_{3}x_{4}-\ y_{4}x_{3}\right)\ -\ \left(x_{3}-x_{4}\right)\left(y_{1}x_{2}-y_{2}x_{1}\right)\ }{\left(x_{1}-x_{2}\right)\left(y_{3}-y_{4}\right)\ -\ \left(x_{3}-x_{4}\right)\left(y_{1}-y_{2}\right)}$

 

y를 구하는 식이다

$\ y\ =\ \frac{\left(y_{1}-y_{2}\right)\left(\ x_{3}y_{4}-\ x_{4}y_{3}\right)\ -\ \left(y_{3}-y_{4}\right)\left(x_{1}y_{2}-x_{2}y_{1}\right)\ }{\left(y_{1}-y_{2}\right)\left(x_{3}-x_{4}\right)\ -\ \left(y_{3}-y_{4}\right)\left(x_{1}-x_{2}\right)} $

 

코드는 또 어떻게 만드냐 이렇게만든다

#include <libft.h>


typedef struct s_xy
{
	float	x;
	float	y;
}	t_xy;


t_xy ft_intersectionpoint(t_xy line1_p1, t_xy line1_p2, t_xy line2_p3, t_xy line2_p4)
{

    t_xy ret;

	float x1 = line1_p1.x;
	float x2 = line1_p2.x;
	float x3 = line2_p3.x;
	float x4 = line2_p4.x;
	float y1 = line1_p1.y;
	float y2 = line1_p2.y;
	float y3 = line2_p3.y;
	float y4 = line2_p4.y;

	ret.x = (x1- x2) * (y3 * x4 - y4 * x3) - (x3 - x4) * (y1 * x2 -y2 * x1) / ((x1 - x2) * (y3 - y4) - (x3 - x4) * (y1 - y2));
	ret.x = (y1- y2) * (x3 * y4 - x4 * y3) - (y3 - y4) * (x1 * y2 -x2 * y1) / ((y1 - y2) * (x3 - x4) - (y3 - y4) * (x1 - x2));

    return ret;
}

보기편하게 치환함 안하면 더빠름

 

일단 첫번쩨 선을 만들자

 

첫번째 선

x 를 기준으로 하는선과

$\ x=\ \frac{x_{1}-x_{2}}{y_{1}-y_{2}}y\ +\ x_{1}\ -\ \frac{x_{1}-x_{2}}{y_{1}-y_{2}}y_{1}\ $

y를 기준으로 하는선

$\  y\ =\ \frac{y_{1}-y_{2}}{x_{1}-x_{2}}x\ +\ \ y_{1}-\frac{y_{1}-y_{2}}{x_{1}-x_{2}}x_{1} $

보면 둘다 같은거긴하다 나중에 수식 쓸때 귀찮아서 이렇게 한다

 

두번째 선

$\ x=\ \frac{x_{3}-x_{4}}{y_{3}-y_{4}}y\ +\ x_{3}\ -\ \frac{x_{3}-x_{4}}{y_{3}-y_{4}}y_{3}\  $

$\ y\ =\ \frac{y_{3}-y_{4}}{x_{3}-x_{4}}x+\ \ y_{3}-\frac{y_{3}-y_{4}}{x_{3}-x_{4}}x_{3} $

 

그리고 y 나 x를 서로 상쇠해주면 남은 여석이 나옴

$\ \frac{y_{1}-y_{2}}{x_{1}-x_{2}}x\ +\ \ y_{1}-\frac{y_{1}-y_{2}}{x_{1}-x_{2}}x_{1}\ \ =\ \frac{y_{3}-y_{4}}{x_{3}-x_{4}}x+\ \ y_{3}-\frac{y_{3}-y_{4}}{x_{3}-x_{4}}x_{3}\  $

 

$\ \frac{x_{1}-x_{2}}{y_{1}-y_{2}}y\ +\ x_{1}\ -\ \frac{x_{1}-x_{2}}{y_{1}-y_{2}}y_{1}\ \ =\ \frac{x_{3}-x_{4}}{y_{3}-y_{4}}y\ +\ x_{3}\ -\ \frac{x_{3}-x_{4}}{y_{3}-y_{4}}y_{3}\  $

 

이녀석들이 이제 끝이다 그냥 이러고 써도 되는데 좀 잘 안보인다 그래서 수식을 정리하면 

위에 정리된 식처럼 된다 

 

 

중간에 수식을 정리하는법인 저기 위에 사이트 가면 상세히 써놓았다 x는 집접해보셈.. y만 써놈