создание выпуклой оболочки неправильной формы - PullRequest
0 голосов
/ 06 ноября 2018

У меня есть координаты из двух линий разреза, и я хочу создать вокруг них выпуклую оболочку, чтобы использовать ее для анализа точечных рисунков. Однако до сих пор мой выпуклый корпус представляет собой прямоугольник, и я не знаю, как сделать его неправильной формы, чтобы он просто охватывал две линии.

Вот воспроизводимый пример: Вот мои координаты х и у

X <- c(1,2,3,4,5,1,2,3,4,5)
Y <- c(5,5,5,5,5,7,7,7,7,7)

Я объединяю их в кадр данных со столбцами, помеченными X и Y:

TransectLines <- as.data.frame(cbind(X,Y))

Вот две линии разреза:

plot(TransectLines)

transect lines

Я сделал выпуклый корпус, используя координаты X и Y:

twoTransects.chull <- convexhull.xy(x = TransectLines$X, y = TransectLines$Y)

И построил выпуклый корпус:

plot(twoTransects.chull)

hull

И нанесены точки линии разреза поверх него:

points(TransectLines$X,TransectLines$Y)

hull with points

Я бы хотел, чтобы корпус обтекал только линии трансект, а не был прямоугольником. Это возможно?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...