Участок ВоронойДиаграмма с разными нормами - PullRequest
6 голосов
/ 29 октября 2011

Я получил большую пробу с Mathematica (с использованием версии 8).Построение диаграммы Вороного - простая вещь, но как насчет изменения нормы?

<< DiscreteMath`ComputationalGeometry`
data2D = {{4.4, 14}, {6.7, 15.25}, {6.9, 12.8}, {2.1, 11.1}, {9.5, 
14.9}, {13.2, 11.9}, {10.3, 12.3}, {6.8, 9.5}, {3.3, 7.7}, {0.6, 
5.1}, {5.3, 2.4}, {8.45, 4.7}, {11.5, 9.6}, {13.8, 7.3}, {12.9, 
3.1}, {11, 1.1}};
DiagramPlot[data2D, LabelPoints -> False]

Дает мне диаграмму Вороного, соответствующую L_2-норме (евклидовой норме).Мне нужна диаграмма, соответствующая норме L_1 и норме L_infinity ...

1 Ответ

7 голосов
/ 29 октября 2011

С Помощь маме (только в приближении):

enter image description here

enter image description here

ColorCombine[{Image[ WatershedComponents[
    DistanceTransform[i, DistanceFunction -> ManhattanDistance]], 
    "Bit"], i, i}]

enter image description here

Примечание: обратите внимание, что свойство выпуклости для многоугольника Вороного потеряно ...

...