A, B, C 및 D 점을 얻는 방법?선분이 주어진 경우 수직 벡터를 얻는 방법
AB와 CD가 p0p1에 수직 인 경우.
는 p0A, p0B, P1C 가정하고, P1D는 라인의 방향 d = normalize(p1 - p0)
주어진다
A, B, C 및 D 점을 얻는 방법?선분이 주어진 경우 수직 벡터를 얻는 방법
AB와 CD가 p0p1에 수직 인 경우.
는 p0A, p0B, P1C 가정하고, P1D는 라인의 방향 d = normalize(p1 - p0)
주어진다
정규화 길이를 갖는다. 수직 벡터를 계산하려면 (0, 0, 1)
인 교차 곱을 사용할 수 있습니다.
d_left = (-d.y, d.x)
d_right = (d.y, -d.x)
당신은 당신의 좌표계가 정렬되는 방식 때문에 d_left
이 d_right
그 반대가 될 수도 있습니다 말했다하지 않은 : 어느 발생합니다.
그런 다음에 원하는 포인트를 얻을 :
A = p0 + d_left
B = p0 + d_right
C = p1 + d_left
D = p1 + d_right
한다고 가정 rotate(p,d)
이 p
벡터 d
각도를 회전하는 연산자입니다.
그리고, 의 기울기가인 경우, x
이된다. 그러면,
A = p0 + rotate (p1-p0, pi/2)/| p1-p0 |
B = p0 + rotate (p1-p0, -pi/2)/| p1-p0 |
C = p1 + rotate (p1-p0, pi/2)/| p1-p0 |
D = p1 + rotate (p1-p0, -pi/2)/| p1-p0 |
포인트 p0과 포인트 p1의 좌표를 알고 있습니까? – Olexandr