Что если вы вычислили центр тяжести облака и преобразовали его координаты в полярную систему, источником которой является этот центр тяжести.
Затем преобразуйте точку, которую вы хотите исследовать, в ту же систему координат.
Предполагая, что поверхность представляется триангуляцией Делоне, определите три точки с наименьшим отличием угла от точки, которую вы исследуете.
Спроецируйте точку, которую вы исследуете, на треугольник, определенныйэти три точки, и посмотреть, если расстояние спроецированной точки от центроида больше, чем расстояние от фактической точки.
По сути, вы строите треугольную сетку из выпуклой оболочки, но по мере необходимостиодин треугольник за раз.Если скорость выполнения действительно имеет значение, вы можете кэшировать полученные треугольники по ходу работы.
Стивен Судит также предложил полезную оптимизацию , которую я бы порекомендовал, если вы пойдете по этому пути.