Сохранять координаты центров кругов в массиве и при создании нового круга проверять, что расстояние от его центра до центра любого уже нарисованного составляет не менее (2*R + D) по обеим координатам, где R - радиус отрисовки круга, D - поправочный коэф. для того, что бы круги не касалист друг друга (т.е. минимальная длинна линии между кругами).
ЗЫ. Кстати, рекомендую сначала рисовать линии (связи), а уже сверху них рисовать круги (вершины), что бы на заморачиваться с вычислением координат начала/конца линий на границах кругов
