Изучив тесты упрощения для topojson, я смог понять, как использовать toposjson.simplify(), но я не могу утверждать, что полностью знаю, что происходит. Вы можете увидеть тесты на гитхабе topojson.
По сути, topojson.simplify принимает на вход топологию и имеет 2 возможных варианта упрощения: «сохранение пропорции» и «минимальная площадь», вы также можете передать систему координат, также известную как «декартова» или «сферическая», хотя ее можно вывести при большинстве обстоятельств.
Примеры:
output = topojson.simplify(topology,{"minimum-area": 2,"coordinate-system": "spherical"});
output =topojson.simplify(topology,{"retain-proportion: 2,"coordinate-system": "spherical"});
Я не совсем уверен, что именно означают значения, которые вы передаете этим параметрам, однако более высокие значения, как правило, приводят к большему упрощению. Обратите внимание, что функция сохранения пропорции часто возвращает недопустимые топологии при передаче LineString, что может быть ожидаемым.
Кроме того, использование параметра квантования в topojson.topology может использоваться для создания меньшего и более простого вывода и может быть лучшим решением для некоторых подобных случаев использования, а также нигде не имеет четко документированных примеров серверного API, поэтому:
//very simplified, small output
topojson.topology({routes: routesCollection},{"quantization":100});
//very unfiltered, large output
topojson.topology({routes: routesCollection},{"quantization":1e8});
примечание: квантование по умолчанию равно 10000 (1e4), поэтому все, что меньше 10000, создаст меньший результат и наоборот.
person
Alex Muro
schedule
07.02.2014