Использование Sql Spatial Data (C #) для нахождения «визуального» центра неправильных многоугольников
Я рисую регионы (используяSqlGeometry
/SqlGeography
и переводить их в WPFLocationCollection
эквивалент) на элементе управления Bing Maps WPF и необходимо пометить их. Я получил ярлыки на регионах и прикрепил их к точке, найденнойSTCentroid()
, Конечно, как вы представляете, это проблема с областями в форме «U» или «C», где центроид оказывается вне области, что делает метку неправильной.
Есть ли способ использованияSqlGeometry
/SqlGeography
найти "визуальный" центр или, возможно, найти самый большой круг, который может соответствовать форме и использовать этот центр? я пробовалразличные методы с помощьюSTPointOnSurface()
но похоже чтоSTPointOnSurface()
всегда выбирает точку на краю, например, DCREHA (метка для нижней темно-зеленой области всегда заканчивается на краях: