#алгоритм
У меня есть отрезок с известными координатами концов. На этом отрезке есть точка. Я знаю расстояние от начала отрезка до этой точки. Мне надо найти координаты этой точки. Как найти эти координаты? Пример: Есть 2 точки А(3,3) и В(6,4). Длина отрезка примерно 3,16. И есть точка С(?,?) на отрезке. Как найти координаты, если от А до С =1,8 ???
Ответы
Ответ 1
Алгоритм без кода (довольно элементарный): Имеем: Две точки A, B; len - расстояние от точки А до требуемой точки C full_len = |B - A| // длина вектора, соединяющего две точки == длина отрезка C = A + (B - A) * (len / full_len) Сложение векторов и умножение на число - очевидные операции.Ответ 2
Имеется отрезок AB с координатами A(Xa, Ya) и B(Xb, Yb). Требуется найти координаты точки C(Xc, Xc), лежащей на отрезке AB на расстоянии Rac от точки A. Rab = sqrt((Xb-Xa)^2 + (Yb-Ya)^2) k = Rac / Rab Xc = Xa + (Xb-Xa)*k Yc = Ya + (Yb-Ya)*kОтвет 3
nodet - точка конец вектора, в твоем случае точка b nodef - точка начало вектора, в твоем случае точка a dx = nodet.x - nodef.x dy = nodet.y - nodef.y dz = nodet.z - nodef.z r = math.sqrt(dx ** 2 + dy ** 2 + dz ** 2) xx = dx * (step/r) yy = dy * (step /r) zz = dz * (step /r) newnode = node(nodef.x + xx,nodef.y + yy,nodef.z + zz) newnode - новая точка на заданом расстоянии
Комментариев нет:
Отправить комментарий