2009-10-23 6 views
3

3D 평면에서 점의 최소 수직 거리를 찾는 방법은 무엇입니까?3D 평면 알고리즘에서 점의 최소 수직 거리

논리를 알려주십시오. 직접 작성하려고합니다.

x, y, z 좌표계로 표시하는 방법을 알려주세요.

필자는 코딩의 관점에서 쉽게 알맞은 솔루션을 찾기가 약간 어렵다는 것을 알고 있습니다. 온라인 솔루션은 약간 녹슬어서 이해할 수 있습니다. 그러니 제발 도와주세요.

줄은 3D 공간 방정식으로 표시됩니다.

+0

어떤 형식으로 하시겠습니까? – Lopoc

+0

x, y, z 형식의 관점에서. – Test

+0

라인은 3-d 공간에서 하나의 방정식으로 결정되지 않습니다. 비행기까지의 거리를 의미합니까? 그렇지 않으면 라인이 어떻게 지정됩니까? – UncleO

답변

2

무한 라인의 경우, 최소 거리는 라인에서 시작하여 끝나는 점을 통과하는 무한 선에 직각 인 선분의 길이입니다. 직각의 방향은 평면에 대한 법선 법선과 선을 따르는 단위 벡터의 외적에 의해 주어지며, 직각의 밑변은 첫 번째 선에 대한 방정식의 동시 해법과 포인트. 포인트 사이의 거리는 당신이 무엇을하고 있는지입니다.

유한 라인의 경우 수직선이 세그먼트에있는 경우에만 해결책입니다. 그렇지 않으면 세그먼트의 끝과 끝 사이의 거리가 더 짧습니다.

13

주어진 점 A와 선에서 두 개의 다른 점 (B와 C)을 선택하십시오. Heron's formula을 사용하여 삼각형 ABC의 면적을 계산합니다. 면적을 2로 곱하고 [BC] 길이로 나눕니다. 필요한 결과를 얻었습니다.

+0

3D 비행기에 유효합니까? – Test

+0

세 점은 항상 평면을 형성합니다. 삼각형은 항상 삼각형입니다. @Pavel : 멋진 트릭, 그건 그렇고. –

+0

3 점이 모두 동 선형이 아닌 경우 평면을 형성합니다. – JimN

1

당신은 라인이 3D로 방정식으로 주어졌지만, 실제로 평면은 방정식에 의해 주어집니다. 그리고이 선은 3D 평면에 놓여 있다고 말합니다. 아마도 다른 방정식에 의해 주어진 것으로, 실제로 선은 두 평면의 교차점입니다.

선의 방향 벡터를 얻으려면 법선의 외적을 두 평면으로 가져옵니다. 파벨의 방법을 사용한다면, 당신은 이것을 필요로하지 않습니다.

선상에 점을 가져 오려면 x에 대해 몇 가지 값을 선택하십시오. 예를 들어 x = 0입니다. 그 값을 연결 한 후 y와 z에 대한 두 방정식을 풀어보십시오. 파벨의 방법에서 사용할 다른 점을 찾으려면 x를 다른 값, 예를 들어 x = 1로 설정하고 시스템을 다시 해석하십시오.

선의 방향이 잘못된 경우 (x 축에 수직) x는 고정 값일 수 있습니다. 이 경우 y를 두 개의 고정 값으로 설정하십시오. 그래도 문제가 해결되지 않으면 z를 시도하십시오. 또한 원래 평면이 평행하지 않아 교차 선이 실제로 있는지 확인하십시오.

파벨 (Pavel)의 방법을 사용하지 않고 문제를 풀려면 주어진 점과 선상에있는 점으로 형성된 벡터와 선의 방향을 교차 시키십시오. 이제 그 결과를 선 방향으로 교차시켜 새로운 벡터를 얻으십시오. 원점을 벡터로하고 점선으로 다시 점을 찍습니다. 차이를 가져 와서 벡터의 길이로 나눕니다.

+0

+1은 3D의 평면과 같은 선의 정신적 이미지입니다. 나는 그들의 교차로가 실제로 선인 것을 알 때까지 붙어있어. – karmanaut

관련 문제