C
C
coolakov2015-11-12 10:27:58
Algorithms
coolakov, 2015-11-12 10:27:58

How to visualize the relative position of points, knowing the distance between them?

Greetings. There are many ways to determine the distance between points by their coordinates. But I have an inverse problem: pairwise distances between a set of points are known, you need to display them on a plane: without coordinates, but with a correct display of the distance between points. I am weak in mathematics and geometry, I could not find solutions on my own.
I will specify the task.
There are 4 points on the plane, A, B, C, D. Pairwise distances:
AB=3, AC=4, AD=5;
BA=3, BC=5, BD=4;
CA=4, CB=5, CD=3;
DA=5, DB=4, DC=3.
It is necessary to display the relative position of these points on the plane. Suggest possible solutions.

Answer the question

In order to leave comments, you need to log in

3 answer(s)
S
SeptiM, 2015-11-12
@SeptiM

We take two points A and B at a distance r, preferably as far as possible. We put one in (0, 0), the other in (r, 0). We take the third point C. We know AC and BC. Find the intersection of two circles with radius AC and BC and centers at A and B, respectively. The intersection consists of no more than two points, we take any.
Для всех остальных точек определяем пересечение окружностей как для точки C, но чтобы выбрать одну из двух позиций используем расстояние от C.

N
Nicholas, 2015-11-12
@healqq

Предположите, что одна из точек находится в (0,0), составьте систему уравнений используя формулу о расстоянии между двумя точками, решите её любым методом.

C
coolakov, 2015-11-12
@coolakov Автор вопроса

Николай, спасибо за ответ.
Да, для данного конкретного случая я пришел к аналогичному решению: выбираем опорную точку, составляем систему уравнений, решаем.
Но нет ли какого-либо общего алгоритма решения, упрощающего расчеты при наличии 100, 1000 точек? Или в любом случае, для 1000 точек придется решать систему из 1000 (даже больше) уравнений?

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question