전체 글119 7. 두 점(Point)의 교점 구하기 두직선의 교점을 구해보자. 다음과 같이 Point A, B로 이루어진 Line A과 Point C, D로 이루어진 Line B가 있다고 가정하자. 여기서 Line은 Line segment가 아닌 양방향으로 무한대로 뻗어나가는 직선입니다. P라는 교차점 있습니다. P점은 AB Line 위에 존재 합니다. AB라인의 식을 사용해서 P점을 나타내면 P(t) = (B - A) * t + A 또한 P점은 CD Line 위에 존재 합니다. CD라인의 식을 사용해서 P점을 나타내면 P(t) = (D - C) * t + C 여기서 CD의 법선벡터 N이 있다고 가정합니다. CD 라인과 법선벡터 N은 서로 수직(Perpendicular)이며, 내적(dotproduct)의 성질인 서로 수직인 벡터를 내적하면 0 임을 이용하.. 2023. 9. 13. 6. 면 (Plane) Plane을 만들수 있는 방법은 다음과 같다. 1> Point 3개로 이루어진 면 2> Point 1개와 Line 2개 3> Line 2개 Line 을 만들때 Point 2개가 필요하므로, Point 1개가 추가로 더 필요하다. 면을 기하적으로 표현하면 아래와 같다. Plane 방정식 다음과 같다. - P, Q는 Plane에 포함된 서로 다른 Point. - n은 P, Q와 수직인 노멀 벡터 평면의 방정식을 좌표를 넣어서 풀어보면 ax + by + cz = d 형태의 식으로 나타낼 수 있습니다. - a, b, c 는 normal vector(n)의 구성 요소 입니다. - d의 상수값은 normal vector(n)과 point (q)의 내적으로 이루어짐을 알 수 있습니다. 코드에서는 Plane을 내부적으.. 2023. 9. 11. 5. 선 (Line), 선과 선의 교차점 체크하기 선을 표현하는 3가지 방식이 있습니다. Line (직선) : 선의 양방향이 무한대로 뻗어나가는 선 Ray (반직선) : 선의 한쪽 방향으로만 무한대로 뻗어나가는 선 Line Segment (선분) : 선의 양 끝점이 고정된 선.\ 선(Line)의 방정식은 다음과 같이 표현합니다. c = vt + a v는 방향 벡터을 의미합니다. 위의 변수 t 값의 의미는 v 벡터 방향으로 얼마나 떨어져 있는가를 말합니다. 특정 방향으로 얼마만큼 떨어져 있는 벡터 값에 a 점의 위치와 더해서 새로운 지점 c 를 만듭니다. 3차원인 좌표에 대해서는 t에 대해서 다음과 같이 정리할수 있습니다. 1) 값이 (4, -1, 3)인 점 p를 통과하고 벡터(1, 4, -3)에 평행한 직선의 방정식을 찾아보세요. 2) 다음 두 직선의 .. 2023. 9. 9. 4. 벡터의 Orientation 벡터의 방향 (Orientation) 에 대해서 알아보자. 3차원 방향과 크기를 가리키는 벡터의 표현 방식은 (x, y, z)로 나타낼수 있다. 3차원 좌표도 동일하게 (x, y, z)로 나타낼수 있기 때문에 혼동하면 안된다. A(x1, y1) , B(x2, y2), C(x3, y3) 3개의 좌표가 있다. - AB 벡터는 (x2 - x1, y2 - y1) - BA 벡터는 (x1 - x2, y1 - y2) 벡터는 방향이 반대로 되면, x, y의 부호도 반대로 된다. AB가 선분 (line segment)을 이룬다고 가정할때, AB 선분을 기준으로 C가 어디에 있는지 확인할 수 있는 방법이 있다. 모든 위치의 경우의 수는 다음과 같다. 1) C가 선분 AB의 왼쪽에 있다. 2) C가 선분 AB의 오른쪽에 있.. 2023. 9. 9. 이전 1 ··· 21 22 23 24 25 26 27 ··· 30 다음