API для Hull Geom утверждает: «Предполагает, что массив вершин больше трех. Если вершины имеют длину < = 3, возвращает []." (https://github.com/mbostock/d3/wiki/Hull-Geom)D3.js Выпуклый корпус с двумя точками данных
Мне нужно нарисовать выпуклые оболочки вокруг 2 узлов. Я использую макет силы, поэтому выпуклый корпус должен быть динамическим, поскольку он перемещается по узлам, если я нажимаю узел и перетаскиваю его. Мой код в настоящее время основаны от этого примера: http://bl.ocks.org/donaldh/2920551
Для контекста, это то, что я пытаюсь сделать выпуклую оболочку вокруг:
Здесь он работает, когда есть 3 узлов:
Вот что я пытаюсь сделать выпуклую оболочку вокруг (не работает с кодом из примера выше, потому что Халл Geom будет принимать только массивы с вершинами 3 +):
Я понимаю, что традиционное использование выпуклого корпуса никогда не будет включать только две точки, но я попытался рисовать эллипсы, прямоугольники и т. Д. Вокруг двух узлов, и он не выглядит нигде почти так же хорошо, как 3 узла ,
Я понимаю, что Hull Geom в конечном итоге просто выплевывает строку, которая используется для путей, поэтому я мог бы, вероятно, написать модифицированную версию Hull Geom для двух узлов.
Любые предложения о том, как написать модифицированный Hull Geom для 2 узлов или любой общий совет для решения моей проблемы, действительно оценены.
Вы можете просто нарисовать эллипс, центрированный между двумя узлами, и повернуть его в соответствии с ориентацией. –