2014-02-11 1 views
0

В каждом примере карты D3, который я могу найти, параметр scale проекции Меркатора установлен равным width/2/Math.PI. Это уникально для проекции Меркатора? Что такое scale, что нужно полагаться на pi? Я хотел бы иметь более интуитивное понимание того, что здесь происходит, но документы довольно скудны.Почему масштабная функция pi в проекции Меркатора D3?

«Если масштаб указано, устанавливает масштабный коэффициент проекции на указанное значение и возвращает проекцию. Если масштаб не задан, возвращает текущий коэффициент масштабирования, который по умолчанию 150. Коэффициент масштабирования соответствует линейно с расстоянием между прогнозируемыми точками. Однако масштабные коэффициенты не согласованы между прогнозами ».

+0

Не знаете, на каких примерах вы ссылаетесь. Конечно, нет необходимости в том, чтобы это было указано в терминах pi. –

+0

Вот один из них: http://techslides.com/demos/d3/d3-worldmap-boilerplate.html – jefflovejapan

+0

[Этот вопрос] (http://stackoverflow.com/questions/14492284/center-a-map-in-d3 -given-a-geojson-object) показывает, как соответствовать данному объекту внутри контейнера и не полагается на pi для вычисления масштаба. –

ответ

1

Mercator projection code использует множество триггеров для преобразования между угловыми координатами lat/long и декартовыми координатами x/y. Я почти уверен, что width/2/Math.PI просто гарантирует, что весь земной шар вписывается в width. (Внутри кода коэффициент масштабирования вашего входа умножается на pi.) Если вы не отображаете весь земной шар, вам нужно самостоятельно определить подходящий масштабный коэффициент.

Смежные вопросы