Подскажите на примере. Координаты в KML из WGS84

Системы координат, проекции, преобразования, привязка
Ответить
Аватара пользователя
whoim
Интересующийся
Сообщения: 25
Зарегистрирован: 30 июл 2011, 11:35
Репутация: 0
Контактная информация:

Подскажите на примере. Координаты в KML из WGS84

Сообщение whoim » 31 июл 2011, 13:32

В общем, есть список точек в WGS84. Они представляют из себя трек. На их основе генерируется следующий KML:

Код: Выделить всё

<?xml version="1.0" encoding="UTF-8"?><kml xmlns="http://earth.google.com/kml/2.1">
  <Document>
    <name>Track</name>
    <description>description</description>
    <Style id="redLine">
      <LineStyle>
        <color>ff0000ff</color>
        <width>2</width>
      </LineStyle>
    </Style>
    <Placemark>
      <name>Track</name>
      <styleUrl>#redLine</styleUrl>
      <LineString>
        <altitudeMode>relative</altitudeMode>
        <coordinates>
44.742182,38.076318,60
44.741608,38.077232,59
44.74098,38.078322,60
44.740468,38.07924,62
44.73988,38.080233,58
44.73937,38.081123,59
44.73881,38.08192,64
44.739352,38.081203,68
44.739993,38.080118,68
44.740523,38.079252,66
44.741027,38.078245,65
44.741557,38.077317,68
44.74206,38.076523,68
44.740693,38.077025,56
44.740023,38.07766,56
44.738663,38.078283,75
44.737432,38.077783,92
44.736327,38.078418,81
44.735772,38.079102,98
44.736448,38.07835,87
44.738697,38.077785,78
44.7403,38.077182,39
44.741437,38.076667,66
44.742382,38.076043,68
44.742883,38.073095,72
44.743433,38.071108,72
44.742705,38.070575,75
44.742035,38.068207,75
44.741328,38.067538,76
44.740772,38.066998,74
44.739118,38.066393,78
44.738482,38.064903,76
44.73798,38.06407,57
44.73731,38.063162,58
44.735643,38.062637,59
44.728622,38.063208,88
44.72728,38.063793,86
44.724817,38.063283,102
44.723648,38.062715,122
44.722587,38.062137,115
44.719647,38.062713,76
44.719035,38.063762,109
44.717138,38.063098,82
44.716455,38.062542,105
44.715188,38.061993,125
44.714018,38.061443,161
44.712717,38.060853,115
44.71207,38.059833,53
44.711088,38.059172,30
44.710195,38.058555,0
44.709605,38.057695,-35
44.709097,38.057118,-47
44.708585,38.05555,-66
44.708027,38.054252,-62
44.70748,38.053117,-56
44.706963,38.047838,25
44.706312,38.046598,46
44.705772,38.045867,67
44.705248,38.04533,80
44.704573,38.04449,101
44.70381,38.043912,75
44.703168,38.043367,67
44.70258,38.042575,118
44.702013,38.041725,109
44.701457,38.040915,91
44.699322,38.040213,178
44.69849,38.039555,178
44.697958,38.038952,155
44.696088,38.039722,167
44.695577,38.040318,159
44.694555,38.040933,93
44.693968,38.041472,47
44.69338,38.0423,-16
44.69278,38.044157,-86
44.69222,38.04486,-103
44.691668,38.046232,-94
44.690277,38.04687,-138
44.689557,38.049175,-36
44.689032,38.049763,-40
44.688515,38.050823,-57
44.686847,38.051343,-119
44.68574,38.052867,6
44.685223,38.053717,170
44.684428,38.05445,186
44.683883,38.055152,179
44.683348,38.055813,190
44.682797,38.057312,175
44.682125,38.057843,194
44.68152,38.058648,185
44.680905,38.059407,186
44.680307,38.06007,195
44.679593,38.060622,186
44.67888,38.061222,193
44.678282,38.060148,220
44.677743,38.059028,227
44.677187,38.058178,244
44.676568,38.057595,252
44.67724,38.058183,238
44.677768,38.059033,226
44.678362,38.060092,169
44.67772,38.062098,114
44.676945,38.062745,105
44.676342,38.063462,99
44.675603,38.063972,115
44.674928,38.064478,104
44.673892,38.065107,60
44.673302,38.065768,44
44.672728,38.066685,41
44.67222,38.067408,53
44.671707,38.068108,225
44.670845,38.068672,168
44.667533,38.069247,123
44.666922,38.069867,127
44.666042,38.070408,168
44.665383,38.071012,229
44.66481,38.071645,243
44.664255,38.073225,251
44.663733,38.075443,238
44.663133,38.074628,278
44.662263,38.075132,279
44.662763,38.077458,305
44.662118,38.079488,320
44.661577,38.080558,347
44.660953,38.08117,349
44.660302,38.081893,338
44.6598,38.08243,333
44.659125,38.082985,326
44.658413,38.083542,306
44.657855,38.084412,279
44.656937,38.085022,287
44.655095,38.08558,267
44.654207,38.086192,265
44.653187,38.086753,250
44.651415,38.087303,242
44.649165,38.087907,170
44.648537,38.088467,170
44.647305,38.08903,154
44.64663,38.08958,165
44.645957,38.090207,157
44.64488,38.090717,171
44.643323,38.091235,163
44.641075,38.091887,153
44.64033,38.092458,141
44.639228,38.09308,124
44.634362,38.093665,143
44.633433,38.09417,144
44.632373,38.094782,142
44.631702,38.095365,132
44.630773,38.095965,131
44.629513,38.0965,130
44.625448,38.097052,122
44.62401,38.097618,120
44.622362,38.09813,113
44.619558,38.09866,112
44.612533,38.099188,105
44.612,38.101033,96
44.611352,38.101772,99
        </coordinates>
      </LineString>
    </Placemark>
  </Document>
</kml>
Так вот, трек на гуглмапс v3 располагается оочень далеко от реально местоположения. Я предполагаю, что в kml используются не те координаты, которые я даю - не wgs84.

Сможете показать на конкретной ситуации, чего делать? )
УАЗ. Всегда ранен, но не убит.

Аватара пользователя
nadiopt
Гуру
Сообщения: 4744
Зарегистрирован: 29 янв 2009, 13:27
Репутация: 495
Ваше звание: хрюкало
Откуда: Санкт-Петербург
Контактная информация:

Re: Подскажите на примере. Координаты в KML из WGS84

Сообщение nadiopt » 31 июл 2011, 15:32

а у вас-то трек в WGS точно? не в Пулково каком-нибудь?
ин гроссен фамилен нихт клювен клац клац

Аватара пользователя
whoim
Интересующийся
Сообщения: 25
Зарегистрирован: 30 июл 2011, 11:35
Репутация: 0
Контактная информация:

Re: Подскажите на примере. Координаты в KML из WGS84

Сообщение whoim » 31 июл 2011, 16:03

nadiopt писал(а):а у вас-то трек в WGS точно? не в Пулково каком-нибудь?
Точно. При использовании API V.2 и подгрузке через XML-файл, складывании в архив points и использовании

Код: Выделить всё

map.addOverlay(new GPolyline(points,"#F00000",2,1));
все четко. Да и разница между пулково и wgs - пара сотен метров вроде, а тут - четверть земного шара )

Выяснил что в KML надо указывать градусы, которые могут принимать отрицательные значения. Насколько это стыкуется с WGS - я не знаю.. ))
УАЗ. Всегда ранен, но не убит.

Аватара пользователя
whoim
Интересующийся
Сообщения: 25
Зарегистрирован: 30 июл 2011, 11:35
Репутация: 0
Контактная информация:

Re: Подскажите на примере. Координаты в KML из WGS84

Сообщение whoim » 31 июл 2011, 18:15

В общем то про полмира я загнул. Вот тут видно. Трек должен быть диагонально противоположно - в верхнем левом углу.

http://my.jetscreenshot.com/1474/20110731-jwkd-69kb
УАЗ. Всегда ранен, но не убит.

Аватара пользователя
whoim
Интересующийся
Сообщения: 25
Зарегистрирован: 30 июл 2011, 11:35
Репутация: 0
Контактная информация:

Re: Подскажите на примере. Координаты в KML из WGS84

Сообщение whoim » 31 июл 2011, 19:16

Млеать, ничего не понимаю. Давайте я дам больше данных..
http://code.google.com/intl/ru-RU/apis/ ... l#latitude
<Местоположение>
Указывает точные координаты источника модели в виде широты, долготы и высоты. Измерения широты и долготы выполняются стандартным образом для проекции широты и долготы в системе координат WGS84. Altitude – это расстояние от земной поверхности в метрах, интерпретируется согласно <altitudeMode> или <gx:altitudeMode>.
То есть все должно работать. ВОТ мой KML

Код: Выделить всё

<?xml version="1.0" encoding="UTF-8"?>
<kml xmlns="http://earth.google.com/kml/2.1">
<!-- Сформировано-->
<Document>
<name>KML file from fototrack</name>
<!-- Фотографии -->
<Placemark>
<name>Fotos Name</name>
<description><![CDATA[
HTML is here<hr>
<p>Home page: <a href="#">fototrack</a></p>
]]>
</description>
<Point>
<coordinates>44.352153,38.934078,0</coordinates>
</Point>
</Placemark>
<!-- Трек -->
<Placemark>
<name>Track</name>
<Style><LineStyle><color>ff0000ff</color><width>1</width></LineStyle></Style>
<LineString>
<altitudeMode>relativeToGround</altitudeMode>
<coordinates>
44.4974,39.074072,0
44.496359,39.07379,0
44.495646,39.073503,0
44.494882,39.073277,0
44.493942,39.072846,0
44.492831,39.073113,0
44.492073,39.073361,0
44.491423,39.073566,0
44.48996,39.07291,0
44.489331,39.072406,0
44.488945,39.07207,0
44.488458,39.071633,0
44.487873,39.07115,0
44.487271,39.070786,0
44.486747,39.069947,0
44.486429,39.06952,0
44.485738,39.068932,0
44.485468,39.068676,0
44.484676,39.068034,0
44.484107,39.067521,0
44.483643,39.067109,0
44.483301,39.066819,0
44.482802,39.06643,0
44.480762,39.066714,0
44.479405,39.066223,0
44.478839,39.065296,0
44.478371,39.064671,0
44.47784,39.064386,0
44.477004,39.063997,0
44.476314,39.063729,0
44.475556,39.063501,0
44.474696,39.063277,0
44.473802,39.062916,0
44.472784,39.061991,0
44.472262,39.06144,0
44.471628,39.060716,0
44.471022,39.060009,0
44.470144,39.059067,0
44.46982,39.058666,0
44.469207,39.057991,0
44.469007,39.057727,0
44.468641,39.056089,0
44.468281,39.055555,0
44.467803,39.055135,0
44.467097,39.054602,0
44.466497,39.054068,0
44.465787,39.053477,0
44.465025,39.052879,0
44.464682,39.05261,0
44.464306,39.052289,0
44.46376,39.051826,0
44.46345,39.051557,0
44.462737,39.050983,0
44.462191,39.050464,0
44.46181,39.050076,0
44.461275,39.049443,0
44.461042,39.049026,0
44.460806,39.047916,0
44.460509,39.047521,0
44.460267,39.047304,0
44.460066,39.047066,0
44.459832,39.04652,0
44.459597,39.045996,0
44.459298,39.045407,0
44.459079,39.044805,0
44.458789,39.044155,0
44.458342,39.043814,0
44.457179,39.044181,0
44.456856,39.044498,0
44.455642,39.044216,0
44.455077,39.043985,0
44.454146,39.043737,0
44.453486,39.043517,0
44.45258,39.043235,0
44.452291,39.04298,0
44.451845,39.042541,0
44.451479,39.042294,0
44.451009,39.041754,0
44.450682,39.041511,0
44.449897,39.040963,0
44.44957,39.04071,0
44.448716,39.040005,0
44.448219,39.035448,0
44.447794,39.034418,0
44.447585,39.033811,0
44.447373,39.033033,0
44.446968,39.032007,0
44.446604,39.031024,0
44.446386,39.030399,0
44.446098,39.030013,0
44.445772,39.029698,0
44.445546,39.029466,0
44.445282,39.029207,0
44.444758,39.028947,0
44.444405,39.028679,0
44.443666,39.028346,0
44.443094,39.028087,0
44.442633,39.027835,0
44.44217,39.027322,0
44.441688,39.026587,0
44.44113,39.025677,0
44.440794,39.025019,0
44.440444,39.022198,0
44.440198,39.021315,0
44.440398,39.020211,0
44.440045,39.019248,0
44.439772,39.018991,0
44.439342,39.018596,0
44.439098,39.018383,0
44.438832,39.018164,0
44.438604,39.017807,0
44.438372,39.01739,0
44.438115,39.017158,0
44.437716,39.016754,0
44.437399,39.016057,0
44.437058,39.012936,0
44.436831,39.012615,0
44.435474,39.012297,0
44.435226,39.012071,0
44.434942,39.011161,0
44.434699,39.01053,0
44.434477,39.009864,0
44.434226,39.009604,0
44.433988,39.009386,0
44.433592,39.008972,0
44.433113,39.008497,0
44.432877,39.00827,0
44.432597,39.008005,0
44.432226,39.007595,0
44.431813,39.006726,0
44.432019,39.006218,0
44.432324,39.005437,0
44.432553,39.003614,0
44.432758,39.002751,0
44.432521,39.001968,0
44.432107,39.001404,0
44.431821,39.001028,0
44.431507,39.00072,0
44.431243,39.000337,0
44.431,38.999946,0
44.430776,38.995726,0
44.430566,38.995411,0
44.430325,38.994927,0
44.430078,38.994295,0
44.429809,38.993701,0
44.42946,38.992749,0
44.429053,38.992489,0
44.428654,38.992792,0
44.428413,38.993006,0
44.428211,38.993296,0
44.42775,38.993585,0
44.427245,38.993306,0
44.426913,38.99308,0
44.426314,38.993283,0
44.426056,38.993655,0
44.425655,38.993874,0
44.425281,38.994158,0
44.424793,38.994402,0
44.423965,38.99468,0
44.423737,38.994989,0
44.423488,38.995314,0
44.420256,38.995037,0
44.420004,38.994755,0
44.419603,38.994469,0
44.419124,38.994191,0
44.418419,38.993817,0
44.418141,38.993522,0
44.41785,38.99313,0
44.417644,38.992857,0
44.417438,38.99236,0
44.417124,38.992112,0
44.416349,38.992313,0
44.415636,38.992086,0
44.414793,38.991847,0
44.414331,38.991591,0
44.413514,38.991904,0
44.413234,38.992114,0
44.412893,38.992454,0
44.412616,38.992744,0
44.412292,38.99316,0
44.412048,38.993401,0
44.411822,38.993696,0
44.411049,38.99393,0
44.410742,38.994303,0
44.41048,38.994595,0
44.410253,38.994839,0
44.409455,38.994623,0
44.409213,38.9944,0
44.408766,38.994608,0
44.408508,38.994943,0
44.408141,38.995424,0
44.407896,38.995729,0
44.407648,38.995424,0
44.406619,38.995674,0
44.40583,38.995396,0
44.405607,38.9951,0
44.405344,38.994681,0
44.405068,38.994318,0
44.404743,38.994062,0
44.404535,38.993713,0
44.404331,38.993367,0
44.404003,38.992872,0
44.403788,38.992038,0
44.403514,38.991511,0
44.403232,38.990982,0
44.402917,38.990675,0
44.402664,38.990248,0
44.402419,38.989805,0
44.40213,38.989597,0
44.401662,38.98934,0
44.399796,38.989071,0
44.399424,38.988835,0
44.39812,38.988618,0
44.397863,38.988383,0
44.397604,38.987316,0
44.397306,38.986627,0
44.39709,38.986082,0
44.396845,38.985638,0
44.396629,38.98449,0
44.396871,38.980095,0
44.396549,38.975086,0
44.396104,38.975481,0
44.395869,38.976012,0
44.39479,38.975785,0
44.393821,38.975536,0
44.393396,38.975067,0
44.39206,38.975497,0
44.389996,38.975279,0
44.389733,38.974945,0
44.389153,38.97471,0
44.388688,38.974455,0
44.388449,38.974188,0
44.387871,38.973892,0
44.3875,38.973636,0
44.386543,38.973319,0
44.386251,38.973091,0
44.38579,38.97277,0
44.38528,38.972538,0
44.383521,38.972219,0
44.383264,38.972001,0
44.382391,38.972336,0
44.382188,38.973186,0
44.381821,38.975063,0
44.381597,38.975527,0
44.381396,38.975787,0
44.381166,38.976108,0
44.380902,38.976443,0
44.380573,38.97666,0
44.378191,38.976355,0
44.377859,38.976099,0
44.377461,38.975821,0
44.376334,38.975605,0
44.375864,38.975197,0
44.375548,38.974857,0
44.375205,38.97429,0
44.374699,38.973901,0
44.373107,38.973664,0
44.37289,38.973415,0
44.372636,38.972935,0
44.37227,38.972275,0
44.371826,38.971528,0
44.371368,38.970634,0
44.37106,38.970334,0
44.370791,38.969941,0
44.370574,38.96932,0
44.370186,38.968339,0
44.369666,38.967324,0
44.369117,38.965797,0
44.368706,38.965101,0
44.368416,38.964551,0
44.36818,38.964141,0
44.367823,38.963332,0
44.367588,38.962826,0
44.367054,38.962073,0
44.366387,38.961419,0
44.366061,38.961134,0
44.365801,38.960791,0
44.365429,38.960498,0
44.364911,38.960167,0
44.364574,38.95987,0
44.364295,38.959358,0
44.364088,38.957732,0
44.363849,38.957312,0
44.363615,38.95696,0
44.363297,38.956474,0
44.36309,38.95553,0
44.362816,38.955059,0
44.362534,38.954545,0
44.362311,38.953965,0
44.361996,38.952865,0
44.361686,38.952024,0
44.361486,38.951409,0
44.361155,38.950195,0
44.36094,38.948962,0
44.360688,38.947422,0
44.360236,38.946585,0
44.359936,38.945873,0
44.359728,38.945565,0
44.359287,38.944814,0
44.358985,38.944425,0
44.358321,38.943566,0
44.357749,38.942744,0
44.357264,38.941982,0
44.356877,38.941373,0
44.356366,38.940566,0
44.355732,38.939671,0
44.355463,38.939225,0
44.355012,38.938369,0
44.35437,38.937121,0
44.353528,38.935897,0
44.352409,38.934726,0
44.352153,38.934078,0
</coordinates>
</LineString>
</Placemark>
</Document>
</kml>
Это скопипащено с файла. Что в этом KML не так?
1) Точка (маркер) не отображается вообще
2) Трек отображается где то за Арменией вместо Туапсе..

UPD1
Проблема с точкой и стилями (не меняются) примерно выяснена. Похоже, гуглмапс КЭШИРУЕТ запросы к KML-файлам (!!???), ибо стоит переместить КML файл под другим именем и изменит на него вызов в скрипте, как подгружается уже с новыми стилями, изменениями точек. Но, млин, по прежнему в армении...
УАЗ. Всегда ранен, но не убит.

Аватара пользователя
whoim
Интересующийся
Сообщения: 25
Зарегистрирован: 30 июл 2011, 11:35
Репутация: 0
Контактная информация:

Re: Подскажите на примере. Координаты в KML из WGS84

Сообщение whoim » 31 июл 2011, 19:44

Великолепно!

1) Широту и долготу пришлось поменять местами
2) Вопрос с кэшированием остался. Прийдется дурить гугл с рандомом.
УАЗ. Всегда ранен, но не убит.

ericsson
Гуру
Сообщения: 3321
Зарегистрирован: 27 июл 2009, 19:26
Репутация: 748
Ваше звание: Вредитель полей

Re: Подскажите на примере. Координаты в KML из WGS84

Сообщение ericsson » 31 июл 2011, 22:48

Писать в URL файла что-то вроде _ttp://domain.name/file.kml?673468706093609
где после знака вопроса - случайное число.

Аватара пользователя
whoim
Интересующийся
Сообщения: 25
Зарегистрирован: 30 июл 2011, 11:35
Репутация: 0
Контактная информация:

Re: Подскажите на примере. Координаты в KML из WGS84

Сообщение whoim » 31 июл 2011, 23:10

ericsson, я догадался :)
Этот вопрос закрыт. На java выглядит так:

Код: Выделить всё

var KML = new google.maps.KmlLayer('http://<?=$_SERVER['SERVER_NAME']?>/kml_track.php?trid=<?=$header_id?>&rnd='+Math.random());
по крайней мере у меня ))
УАЗ. Всегда ранен, но не убит.

Ответить

Вернуться в «Координаты и привязка»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя