Пунктир на карте

Пунктир на карте

Прежде чем использовать на карте прерывистую линию, стоит лишний раз подумать. Во-первых, это создает лишний шум, и без явной необходимости лучше пунктир не применять. Во-вторых, если без него не обойтись, то делать это необходимо с умом.

Лучше всего пунктир подходит для объектов с неявным существованием, например пересыхающих рек. Одни и те же объекты в зависимости от карты могут быть как явными, так и неявными, поэтому выбор пунктира (впрочем, и других условных знаков) привязан не к объекту, а к карте. Например, на политической карте государственные границы — совершенно явный объект, показывать их пунктиром глупо. Единственное исключение — спорные и неустановленные границы. Напротив, на физической карте, границ государств может вообще не быть. В этом случае, если наполнение карты позволяет, границы можно изобразить прерывистыми линиями.

Второй важный момент: всякая линия на карте говорит о двух вещах: где расположены точки перегиба и какая между ними связность. Если вы используете пунктирную линию, не теряйте точки перегиба. Часто разрыв пунктирной линии приходится именно на них — ситуация совершенно недопустимая. Лучше уж немного изменить длину штрихов или расстояние между ними.

Картографический стиль «Y»

В связи с очередным изменением дизайна Яндекс-карт, а также их решительного перехода на векторные тайлы, настало время открыть последний из уцелевших черновиков картографического стиля «Y». Этот xml-файл под мапник стилизует данные OpenStreetMap под стиль Яндекс-карт образца 2016 года.

Файл рабочий, но нет прилагаемого архива с иконками. Оформление кода жуткое и полная дичь в запросах. Надеюсь, сможет послужить хотя-бы в качестве примера стиля под мапник. В связи с лицензионными проблемами предостерегаю от использования в собственных проектах в неизменном виде: я против ничего не имею, но с Яндексом сами разбирайтесь. Выкладываю исключительно в историко-познавательных целях. Ну и еще ради сохранения. Через пару лет и этого файла не останется.

Картографический код как в чудесной алисиной стране: требуется много усилий для того, что-бы он хотя-бы оставался на месте и не деградировал.

Превьюшки картостиля (в левой части картинок оригинальные Яндекс-карты, в правой картостиль «Y» на базе данных OpenStreetMap):

Фрагмент кода (первые 200 строк)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE Map[]>
<Map srs="+proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0
		+x_0=0.0 +y_0=0.0 +k=1.0 +units=m +nadgrids=@null
		+wktext +no_defs +over" background-color="#aacbd9" >
 
<!-- Масштабы и зумы
zoom_00 <MaxScaleDenominator>1000000000</MaxScaleDenominator>
		<MinScaleDenominator>400000000</MinScaleDenominator>
 
zoom_01 <MaxScaleDenominator>400000000</MaxScaleDenominator>
		<MinScaleDenominator>200000000</MinScaleDenominator>
zoom_02 <MaxScaleDenominator>200000000</MaxScaleDenominator>
		<MinScaleDenominator>100000000</MinScaleDenominator>
zoom_03 <MaxScaleDenominator>100000000</MaxScaleDenominator>
		<MinScaleDenominator>50000000</MinScaleDenominator>
 
zoom_04 <MaxScaleDenominator>50000000</MaxScaleDenominator>
		<MinScaleDenominator>25000000</MinScaleDenominator>
zoom_05 <MaxScaleDenominator>25000000</MaxScaleDenominator>
		<MinScaleDenominator>15000000</MinScaleDenominator>
zoom_06 <MaxScaleDenominator>15000000</MaxScaleDenominator>
		<MinScaleDenominator>7000000</MinScaleDenominator>
 
zoom_07 <MaxScaleDenominator>7000000</MaxScaleDenominator>
		<MinScaleDenominator>3500000</MinScaleDenominator>
zoom_08 <MaxScaleDenominator>3500000</MaxScaleDenominator>
		<MinScaleDenominator>1500000</MinScaleDenominator>
zoom_09 <MaxScaleDenominator>1500000</MaxScaleDenominator>
		<MinScaleDenominator>700000</MinScaleDenominator>
 
zoom_10 <MaxScaleDenominator>700000</MaxScaleDenominator>
		<MinScaleDenominator>350000</MinScaleDenominator>
zoom_11 <MaxScaleDenominator>350000</MaxScaleDenominator>
		<MinScaleDenominator>150000</MinScaleDenominator>
zoom_12 <MaxScaleDenominator>150000</MaxScaleDenominator>
		<MinScaleDenominator>70000</MinScaleDenominator>
 
zoom_13 <MaxScaleDenominator>70000</MaxScaleDenominator>
		<MinScaleDenominator>35000</MinScaleDenominator>
zoom_14 <MaxScaleDenominator>35000</MaxScaleDenominator>
		<MinScaleDenominator>20000</MinScaleDenominator>
zoom_15 <MaxScaleDenominator>20000</MaxScaleDenominator>
		<MinScaleDenominator>10000</MinScaleDenominator>
 
zoom_16 <MaxScaleDenominator>10000</MaxScaleDenominator>
		<MinScaleDenominator>5000</MinScaleDenominator>
zoom_17 <MaxScaleDenominator>5000</MaxScaleDenominator>
		<MinScaleDenominator>2500</MinScaleDenominator>
zoom_18 <MaxScaleDenominator>2500</MaxScaleDenominator>
		<MinScaleDenominator>1500</MinScaleDenominator>
 
zoom_19 <MaxScaleDenominator>1500</MaxScaleDenominator>
		<MinScaleDenominator>700</MinScaleDenominator>
zoom_20 <MaxScaleDenominator>700</MaxScaleDenominator>
		<MinScaleDenominator>350</MinScaleDenominator>
-->
 
<Parameters>
  <Parameter name="bounds">-180,-90,180,90</Parameter>
  <Parameter name="center">0,0,2</Parameter>
  <Parameter name="format">png</Parameter>
  <Parameter name="minzoom">2</Parameter>
  <Parameter name="maxzoom">19</Parameter>
  <Parameter name="name">
	  <![CDATA[Mapstyle Y for OpenStreetMap Data,
				powered by Sergey Golubev]]></Parameter>
</Parameters>
 
<FontSet name="regular">
  <Font face-name="Ubuntu Regular"/>
  <Font face-name="Arial Regular"/>
  <Font face-name="DejaVu Sans Book"/>
</FontSet>
<FontSet name="italic">
  <Font face-name="Times New Roman Italic"/>
  <Font face-name="FreeSerif Italic"/>
  <Font face-name="DejaVu Serif Italic"/>
</FontSet>
<FontSet name="bold">
  <Font face-name="Arial Bold"/>
  <Font face-name="Liberation Sans Bold"/>
  <Font face-name="DejaVu Sans Bold"/>
</FontSet>
 
<Style name="RUworld" filter-mode="first" >
<Rule>
    <MaxScaleDenominator>1000000000</MaxScaleDenominator>
	<MinScaleDenominator>700</MinScaleDenominator>
			<PolygonSymbolizer
			fill="#fffff7" />
			<LineSymbolizer
			stroke="rgba(135, 135, 135, 0.04)"
			stroke-width="10"
			stroke-linejoin="round" />
</Rule>
 
<Rule>
    <MaxScaleDenominator>1000000000</MaxScaleDenominator>
	<MinScaleDenominator>100000000</MinScaleDenominator>
		<Filter>([ISO_A2] = 'BY')</Filter>
			<LineSymbolizer
			stroke="rgba(135, 135, 135, 0.04)"
			stroke-width="2"
			stroke-linejoin="round" />
				<PolygonSymbolizer
				fill="#fff8e7" />
</Rule>
<Rule>
    <MaxScaleDenominator>100000000</MaxScaleDenominator>
	<MinScaleDenominator>50000000</MinScaleDenominator>
		<Filter>([ISO_A2] = 'BY')</Filter>
			<LineSymbolizer
			stroke="rgba(135, 135, 135, 0.04)"
			stroke-width="5"
			stroke-linejoin="round" />
				<PolygonSymbolizer
				fill="#fff8e7" />
</Rule>
<Rule>
    <MaxScaleDenominator>50000000</MaxScaleDenominator>
	<MinScaleDenominator>12500000</MinScaleDenominator>
		<Filter>([ISO_A2] = 'BY')</Filter>
			<LineSymbolizer
			stroke="rgba(135, 135, 135, 0.04)"
			stroke-width="10"
			stroke-linejoin="round" />
				<PolygonSymbolizer
				fill="#fff8e7" />
</Rule>
<Rule>
    <MaxScaleDenominator>12500000</MaxScaleDenominator>
	<MinScaleDenominator>700</MinScaleDenominator>
		<Filter>([ISO_A2] = 'BY')</Filter>
			<LineSymbolizer
			stroke="rgba(135, 135, 135, 0.04)"
			stroke-width="10"
			stroke-linejoin="round" />
				<PolygonSymbolizer
				fill="#fffff7" />
</Rule>
<Rule>
    <MaxScaleDenominator>1000000000</MaxScaleDenominator>
	<MinScaleDenominator>100000000</MinScaleDenominator>
		<Filter>([ISO_A2] = 'RU')</Filter>
			<LineSymbolizer
			stroke="rgba(135, 135, 135, 0.04)"
			stroke-width="2"
			stroke-linejoin="round" />
				<PolygonSymbolizer
				fill="#fff0f5" />
</Rule>
<Rule>
    <MaxScaleDenominator>100000000</MaxScaleDenominator>
	<MinScaleDenominator>50000000</MinScaleDenominator>
		<Filter>([ISO_A2] = 'RU')</Filter>
			<LineSymbolizer
			stroke="rgba(135, 135, 135, 0.04)"
			stroke-width="5"
			stroke-linejoin="round" />
				<PolygonSymbolizer
				fill="#fff0f5" />
</Rule>
<Rule>
    <MaxScaleDenominator>50000000</MaxScaleDenominator>
	<MinScaleDenominator>12500000</MinScaleDenominator>
		<Filter>([ISO_A2] = 'RU')</Filter>
			<LineSymbolizer
			stroke="rgba(135, 135, 135, 0.04)"
			stroke-width="10"
			stroke-linejoin="round" />
				<PolygonSymbolizer
				fill="#fff0f5" />
</Rule>
<Rule>
    <MaxScaleDenominator>12500000</MaxScaleDenominator>
	<MinScaleDenominator>700</MinScaleDenominator>
		<Filter>([ISO_A2] = 'RU')</Filter>
			<LineSymbolizer
			stroke="rgba(135, 135, 135, 0.04)"
			stroke-width="10"
			stroke-linejoin="round" />
				<PolygonSymbolizer
				fill="#fffff7" />
</Rule>
</Style>
<Style name="RUworld-outline" filter-mode="first" >
<Rule>
    <LineSymbolizer stroke="#85c5d3" stroke-width="3"
		stroke-linejoin="round" />
</Rule>
</Style>
<Layer name="RUworld"  srs="+proj=longlat +ellps=WGS84 +no_defs">
    <StyleName>RUworld-outline</StyleName>
    <StyleName>RUworld</StyleName>
    <Datasource>
       <Parameter name="file"><![CDATA[WORLD/world.shp]]></Parameter>
       <Parameter name="id"><![CDATA[RUworld]]></Parameter>
       <Parameter name="project"><![CDATA[ymapstyle]]></Parameter>
       <Parameter name="srs"><![CDATA[]]></Parameter>
       <Parameter name="type"><![CDATA[shape]]></Parameter>
    </Datasource>
  </Layer>

Десять ошибок картографа

Так случилось, что я второй год выступаю экспертом конкурса картографических работ, который проводит питерский университет в рамках большого географического фестиваля. Это довольно странный выбор, учитывая, что я едва ли смогу обоснованно оценить соответствие элементов произвольной карты закону Вебера-Фехнера, не говоря уже о серьезной экспертизе. Но мне было интересно посмотреть на карты разных авторов, поэтому я сделал вид, что все понимаю и вынес свое суждение.

После половины просмотренных карт мне пришла в голову замечательная мысль заскринить наиболее частые проблемы. Так появился материал для этой статьи. Ниже я привожу десять проблемных мест, которые могут сильно подпортить впечатление о вашей работе. Речь конечно-же пойдет об ошибках в картостиле, поскольку содержание оценить обычно нереально. Перечень далеко не полный, но суть, полагаю, вы уловите.

1. Качество графики

Тут даже комментировать нечего. Просто треш какой-то. Я понимаю, что файл должен весить мало, но не скармливать же джипеговскому алгоритму Хаффмана все то, ради чего стоит открывать карту! Да, иногда приходится жертвовать качеством, но к великому сожалению слишком часто эти жертвы неоправданно велики.

2. Несоответствие объектов карты масштабу

Очень частая проблема, а среди тех, кто использует данные OpenStreetMap вообще почти повсеместная. Генерализация процесс трудоемкий, но необходимый, иначе вместо карты вы получаете холст в грязных пятнах. Обидно, что во многих случаях генерализация вообще не требуется — можно просто убрать объекты с карты, все равно они на ней никакой роли не играют. Для чего вам на карте тысячи озер размером с придорожную лужу если вы рисуете схему 302 железной дороги?

3. Неаккуратная работа с разрывными линиями

При разработке картографического стиля с большой вариативностью линейных объектов часто возникает желание зафигачить пунктир или штрихпунктир. Это прекрасные приемы, но они требуют обязательного соблюдения мер предосторожности. Линии с разрывами хорошо подходят только для прямых объектов. Другими словами: отображать штрихпунткиром границы американских штатов — норм. Отображать штрихпунктиром границы областей России — фу-фу-фу.

4. Невнимательная работа с цветом

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

5. Небрежность в расстановке подписей

Представьте себе два дома, которые стоят вплотную друг к другу, а указатель с номером висит ровно посередине. Куда идти? То же самое с картой. Да, не всегда удается достичь идеала, иногда просто невозможно не выйти за границы дозволенного. Но гораздо чаще авторы просто уповают на всемогущество хилых алгоритмов расстановки подписей.

6. Разрушение целостности

Ровно два часа назад я писал об этом в своем телеграммчике. Объекты на карте — это не просто набор кривых, цветов и символов. Каждый объект, равно как и группа объектов представляет собой единый образ — гештальт, если хотите. Если через надпись проходи линия, то это уже не надпись, а набор букв. Что-бы избежать этого, необходимо использовать разрывы. Ну или использовать обводку на худой конец. То же касается других объектов. Не бойтесь разорвать реку в месте постановки условного знака, если конечно река не является главным объектом вашей карты.

7. Нарушение общепринятых традиций оформления

Иногда можно нарушить это правило (впрочем все остальные тоже) и покрасить озеро в красный, а лес в синий цвет. Но все же без особой нужды лучше этого не делать. Современная картография более требовательна к качеству интуитивного восприятия. Читатели, изнеженные мобильными сервисами привыкли к комфорту и не приемлят сносок внизу страницы как в «Войне и Мире». Чем реже вы будете вынуждать человека обращаться к легенде, тем лучше. Идеальный случай когда легенда совсем не нужна — все понятно сразу по карте.

8. Избыточная стилизация

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

9. Прямоугольная компоновка карты

Не скажу, что это большая ошибка, но круто сделать такую компоновку получилось только у картографов генштаба. В остальных случаях, это разбивает карту на обособленные элементы, а вы же помните, что карта это целостный образ, верно? Выносить легенду в прямоугольный блок можно, но если в правом верхнем углу у вас не стоит надпись: «За утерю карты — смерть» так лучше делать не стоит.

10. Неконтролируемый объем

Объемные (вернее псевдообъемные) карты это мощная штука, которая может не только улучшить визуальные качества карты, но и дополнить ее дополнительными данными. Однако, этой мощью нужно уметь управлять и держать ее под жестким контролем. В противном случае рельеф, строения и другие элементы с высотой могут скрыть или исказить содержимое до неузнаваемости. Добавить объем на карту это так же круто как пересесть с автомобиля на самолет, главное перед этим пройти изнуряющий учебный курс с сотнями неудачных исходов.

Тут-то мои скрины и закончились. В качестве итога скажу, что величайшее заблуждение думать, что изготовление карт хоть сколько-нибудь упростилось со времен Дюфура и Жана-Дюпен-Триеля. Да, у нас теперь крутые инструменты, но по прежнему работа картографа остается тщательной, нудной и кропотливой. Автоматическая визуализация хороша когда от нас требуют быстрого и дешевого результата на один раз. Но во всех остальных случаях, нужно помнить золотые слова М.М. Жванецкого: «Тщательнее надо».

Но в целом я доволен, насладился. Спасибо участникам конкурса за работы и организаторам за предоставленную возможность. С тревогой должен сообщить всем, кто стирал с кульмана лезвием чернильные кляксы. Судя по тому, что творят студенты первых курсов, если срочно не начнем учиться, через десять лет мы со своим умением придавать объем домикам в мапнике пойдем улицы подметать. Это тоже почетно, но не так интересно. Тщательнее надо.

Мапник в Икее

Икеевский Мапник

Иду сегодня по Икее, никого не беспокою. Разглядываю утомительные пейзажи благоустроенного быта, снабженные этикетками на невнятном языке. Вот Юпперлиг, Хемнэс. Тут Свартосэн, Линдвед, Мапник, а это Мюкен… Так, стоп! Какой, нахуй, Мапник? Подошел поближе — точно Мапник:

Да не простой, а олдскульный, розлива середины двухтысячных годов. Сейчас про него уже никто не помнит. Я сам не сразу сообразил: открыл дома OpenStreetMap, а картинка совсем иная:
OSM style

Хорошо, что в моих коллекциях есть чемоданчик осмера, в котором я сохранил ссылку на проект OSM Then And Now, созданный для демонстрации изменений в OSM c 2007 года. Сходство с Икеевской картиной Пьёттерид не идентичное, но ощутимое:
сравнение картостилей

Над Пьёттеридом висит более дорогой триптих Бьёрнамо, в котором тоже усматривается сходство с OSM-овским стилем, только уже современным. Особенно это видно, если уменьшить насыщенность OSM Mapnik на 35-40 процентов:
Бьёрнамо против OSM

Если убрать лишние подписи и поиграть с приоритетом дорог, можно добиться сходства до степени смешения картостилей. Это тем более удивительно, что OSM Mapnik — чудовищный картографический стиль, который плох во всем (и должен таковым быть), а икеевские триптихи выглядят вполне миловидно. Не знаю, черпал ли автор вдохновение в OpenStreetMap или пришел к результату случайно, но первое впечатление от этих карт выглядит как «икеевские дизайнеры совсем охуели».

Но людям нравится.

Дорога на Морье

Оргазм, вибратор, онанизм, жесткач, котята, индуизм

Ладно-ладно, индуизм добавил только для рифмы, он тут и нахуй не припекся, в отличие от остальной части заголовка. Как вы поняли, сегодня я буду говорить о важном и потому хотел бы донести свою мысль до максимального количества людей.

Меня жутко таращит от всякой хипстоты, урбанистов, бигдатамайкеров и прочих пидарасов. Я всегда как ебну соточку, так меня хлебом не корми — дай поюзать какую-нибудь новомодную хуету. Все эти приложеньица, такие красивые, аккуратные, блестящие и быстрые как мандавошки. Одна рука тапает по телефону без кнопок, а другая непроизвольно тянется к смузи. Я бы всю жизнь прожил в этом облаке нарциссического онанизма, но что поделать, если жизнь заставляет порой пиздануться на грешную землю и трезво оценить некоторые экзерсисы разработчиков?

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

Я уже не раз говорил, что картостиль — это айсберг. Девяносто процентов трудов по его созданию обычному пользователю не видны, в то время как именно от этой части работы зависит конечный результат в области картодизайна. Оставим пока вопрос наполненности базы геоданных — это проблема техническая и особого интереса не представляет. Один и тот же объект вы можете отобразить совершенно различным способом и от того, какое решение вы, как картограф, примете, будет зависеть время, деньги, а подчас и жизнь вашего клиента.

Да хули пиздеть-то? Давайте лучше прогуляемся с вами на мыс Морье, что в Ленинградской области. Там очевидно какой-то поселок:
мапсми

Сам поселок может и не очень интересен, а вот посмотреть на церковь может быть весьма любопытно:

Да и чего бы туда не сходить, если даже роутинг туда строится без проблем?

Дорога великолепна. Слева слабодренированные кислично-сфагновые березняки, осинники и сероольшатники:
мелиоративная канава

Справа за соснами шумит едва вскрывшееся ото льда Ладожское озеро:
Ладога

Под ногами вполне сносная асфальтовая дорога. Идете вы такой, природе радуетесь. Километр, второй, четвертый, пятый и тут, хуяк!
Стой, стреляют

Что за хуйня? Если кому не видно — надпись на щите гласит: «Стой, стреляют. Проезд и проход запрещен». Бля, да там же поселок по мапсми? А давайте-ка глянем OSM-стандарт, геоданные-то одни и те же:

Мыс Морье

Воттыжблядь-то! Так и есть, я шестой километр иду по вомнскому полигону. А впереди у меня кпп воинской части не то связистов, не то РВСН. Так какого хуя в масми об этом ни слова? Хотя постойте, видите эту тараканью залупу:

Ее просто нужно вовремя увидеть. Она просто появляется не на всех зумах. Просто инженер, который принял решение о таком обозначении запретных и опасных зон — мудак.

В великую отечественную войну из-за ошибок на карте погибло около миллиона человек. Сейчас времена изменились, карта представляет собой не просто чертеж местности, а синтез геоданных и картостиля. Следовательно, сейчас при наступлении глобальной пизды ласты поклеят уже два миллиона. Первая половина из-за тех, кто наотъебись рисовал линии, а вторая половина из-за тех, кто наотъебись эти линии визуализировал.

И мне еще повезло, что я был в курсе куда эта дорога ведет, ибо в 2007 году мы с диаволом на пятнашке там уже приключались, за что едва не получили пиздюлей. Тогда столбики «Стой, стреляют» стояли через каждые пятьдесят метров. За десять лет их просто все выпилили к хуям.

Сийская дерация

Сижу себе спокойно и пью свой утренний пиво. Никого не трогаю, можно даже сказать примерно себя веду. Прямо перед моими глазами висит школьная карта мира, которую я заимел пару лет назад для своей лаборатории. Знаете, такая пожелтевшая от времени, вся в заломах?

Так получается, что я когда сижу неизменно утыкаюсь взглядом в район Новой Зеландии.
DSCN8229

 

Видите остров Окленд? К юго-востоку от него под буквой «Т» находится еще один остров — маленькая неподписанная точка. Я упираюсь взглядом в эту точку почти каждый день. И каждый раз думаю: что здесь? Нет, ясно что архипелаг какой-то, но хотелось бы деталей. Название, население, климат, геология, растительность, история, да хоть что-то. Ведь это на карте точка выглядит будто картограф что-то из носа выковырял и прилепил, а в реальности там наверняка полно безграничного и бесконечно интересного.

В общем, эта точка на карте выебла мне все мозга и когда терпению моему подошел конец, я полез самообразовываться.

Итак, что нам надо? Для начала узнать название этого архипелага. Открываем карту OpenStreetMap, выбираем искомый район и … открываем главный секрет веб-картографии. С нулевого по десятый зум все карты рисуются наотъебись и выглядят как говно:

Классика:

1

 

Вообще стандартный стиль OSM — это какое-то недоразумение. Ощущение, что он разрабатывался только как иллюстрация к уровню наполненности базы геоданных. Мой любимый зум — четвертый. Тот самый, где географическое расположение России соответствует анатомическому,  появляется новое островное государство «сийская дерация»,

4

 

Эй порноактеры! Эй проститутки! Да что вы знаете о ебле если не пользовались картой OpenStreetMap?

6

7

 

А еще я обожаю идею подписей локальными языками.

— Прикинь, мы в прошлом месяце в авиакомпанию взяли чувака, который разрабатывал картостиль OSM.

— И что теперь?

— Теперь все наши самолеты летают по маршруту: ليبيا — O`zbekiston — 上海

5

 

Карта гуманитарной команды тоже не лучше.  Я не микробиолог, у меня для таких закорючек микроскопа нет:

2

 

МапКвест утопил мой остров в текстурном океане. Зато города со звездочками. Ну заебись теперь.

3

 

— Так тебе нужно какой-нибудь геграфический стиль смотреть. Это же стили скорее политические, здесь текст принадлежности к государству имеет больший приоритет, чем название физического объекта. На какой-нибудь OpenTopoMap все должно быть заебись.

— А вот хуй.

12

 

В OpenStreetMap все данные открыты. Не нравится стиль — пиши свой.  Но как обстоит дело с коммерческими картами?

Яндекс вообще не заморачивается со всякими островами в южном полушарии. Просто гуру похуизма:

8

 

Я понимаю, что нет коммерческой пользы в отображении этих забытых богом мест, но гуглу вот не впадлу было заморочиться. Результат так-себе, но хотя-бы контуры островов видно.

9

 

На картах Бинг та же хуйня. Для тех кто не в теме, Бинг — это поисковик от майкрософта, с джентельменским набором веб-сервисов. Здесь хоть названия стран можно читать. Похуй на красоту. Если текст физиологически читабелен, то уже заебись.

10

 

Наипиздатейше из всего этого мракобесия выглядит только открытый MapSurfer.net. Но говоря по чесноку, рядом с картой полушарий для начальной школы он и близко не стоит. Но здесь хотя-бы можно прочесть «Campbell Island».

11

 

При этом остров прорисован весьма неплохо. Вот он в том же стиле MapSurfer.net:

osm2

 

Моя школьная карта полушарий явно указывает на две крупные проблемы в современной картографии. Во-первых, современные карты делают не картографы, а программисты. Но карта это всегда произведение искусства, которое подобно прочим требует осмысления художником всех деталей и нюансов. Ну не напишешь ты Мону Лизу скриптом, хоть конем ебись! Всеми забытое выражение «читать карту» к современной картографии не относится: только начинаешь читать, как поимаешь, что автор написал две страницы, после чего скопировал их двести раз как в анекдоте про поездку Чапаева в штаб.

Но самая большая проблема даже не в этом. При создании любых современных карт в той или иной форме воссоздается всегда один и тот же диалог:

— Слушай, а мы материки будем одним цветом красить или каждый материк по особому?

— Да похуй как! Главное что-бы тропинки от велодорожек отличались.

 

P.S. Кстати, острова архипелага Кэмпбелл — охуительнейшее место. Там растет самое одинокое в мире дерево и по вершинам скал прячутся пуганные корабельными крысами птицы. Не будь у меня моей старой картой, хрен бы я когда полез в Википедию за информацией об этом острове.