Пользовательские карты

  • Asmadey
  • Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
11 years 2 weeks ago #1362 by Asmadey
Replied by Asmadey on topic Пользовательские карты
Подключил свои тайлы, но не могу понять почему часть не показывается, хотя они есть.

function(coord, zoom)
          {

function getNormalizedCoord(coord, zoom)
    {
      var y = coord[1];
      var x = coord[0];
      
      var tileRange = 1 << zoom;
      
      if (y < 0 || y >= tileRange) { return null; }
      if (x < 0 || x >= tileRange)
      {
        x = (x % tileRange + tileRange) % tileRange;
      }
      
      return { x: x, y: y };
    }

          var normalizedCoord = getNormalizedCoord(coord, zoom);
          if (!normalizedCoord) { return null; }
          
  if ( zoom == 7 && normalizedCoord.x >= 79 && normalizedCoord.x <= 82 && normalizedCoord.y >= 39 && normalizedCoord.y <= 44 )
	  {
            return "http://fishingplace.narod.ru/lotsia/z" + zoom + "/" + normalizedCoord.y + "/" + normalizedCoord.x + ".png"; // replace that with a "real" URL
          }
          if ( zoom == 8 && normalizedCoord.x >= 159 && normalizedCoord.x <= 164 && normalizedCoord.y >= 79 && normalizedCoord.y <= 88 )
          {
            return "http://fishingplace.narod.ru/lotsia/z" + zoom + "/" + normalizedCoord.y + "/" + normalizedCoord.x + ".png"; // replace that with a "real" URL
          }
          else if ( zoom == 9 && normalizedCoord.x >= 319 && normalizedCoord.y <= 329 && normalizedCoord.x >= 159 && normalizedCoord.y <= 176 )
          {
            return "http://fishingplace.narod.ru/lotsia/z" + zoom + "/" + normalizedCoord.y + "/" + normalizedCoord.x + ".png"; // replace that with a "real" URL
          }
          else if ( zoom == 10 && normalizedCoord.x >= 639 && normalizedCoord.x <= 658 && normalizedCoord.y >= 318 && normalizedCoord.y <= 352 )
          {
            return "http://fishingplace.narod.ru/lotsia/z" + zoom + "/" + normalizedCoord.y + "/" + normalizedCoord.x + ".png"; // replace that with a "real" URL
          }
          else if ( zoom == 11 && normalizedCoord.x >= 1278 && normalizedCoord.x <= 1317 && normalizedCoord.y >= 636 && normalizedCoord.y <= 704 )
          {
            return "http://fishingplace.narod.ru/lotsia/z" + zoom + "/" + normalizedCoord.y + "/" + normalizedCoord.x + ".png"; // replace that with a "real" URL
          }
          else if ( zoom == 12 && normalizedCoord.x >= 2556 && normalizedCoord.x <= 2634 && normalizedCoord.y >= 1272 && normalizedCoord.y <= 1409 )
          {
            return "http://fishingplace.narod.ru/lotsia/z" + zoom + "/" + normalizedCoord.y + "/" + normalizedCoord.x + ".png"; // replace that with a "real" URL
          }
          else if ( zoom == 13 && normalizedCoord.x >= 5112 && normalizedCoord.x <= 5269 && normalizedCoord.y >= 2544 && normalizedCoord.y <= 2819 )
          {
            return "http://fishingplace.narod.ru/lotsia/z" + zoom + "/" + normalizedCoord.y + "/" + normalizedCoord.x + ".png"; // replace that with a "real" URL
          }
          if ( zoom == 14 && normalizedCoord.x >= 10224 && normalizedCoord.x <= 10538 && normalizedCoord.y >= 5088 && normalizedCoord.y <= 5639 )
          {
            return "http://fishingplace.narod.ru/lotsia/z" + zoom + "/" + normalizedCoord.y + "/" + normalizedCoord.x + ".png"; // replace that with a "real" URL
          }
          if ( zoom == 15 && normalizedCoord.x >= 20448 && normalizedCoord.x <= 21076 && normalizedCoord.y >= 10176 && normalizedCoord.y <= 11278 )
          {
            return "http://fishingplace.narod.ru/lotsia/z" + zoom + "/" + normalizedCoord.y + "/" + normalizedCoord.x + ".png"; // replace that with a "real" URL
          }
          if ( zoom == 16 && normalizedCoord.x >= 40486 && normalizedCoord.x <= 42152 && normalizedCoord.y >= 20352 && normalizedCoord.y <= 22556 )
          {
            return "http://fishingplace.narod.ru/lotsia/z" + zoom + "/" + normalizedCoord.y + "/" + normalizedCoord.x + ".png"; // replace that with a "real" URL
          }	  

          return null;
        }

Please Log in or Create an account to join the conversation.

  • Asmadey
  • Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
11 years 2 weeks ago #1364 by Asmadey
Replied by Asmadey on topic Пользовательские карты
Разобрался с выводом тайлов, изменил параметры normalizedCoord.y.

Please Log in or Create an account to join the conversation.

More
11 years 2 weeks ago #1366 by Dima
Потому что там везде анализ типа

if ( zoom == 8 && normalizedCoord.x >= 159 && normalizedCoord.x <= 164 && normalizedCoord.y >= 79 && normalizedCoord.y <= 88 )

Т.е. тайты по X и Y координатам, и если вы свои условия не указали для своих тайлов - вот и получаете их отсутствие.
Если есть ваши тайлы, значит вы нарезали их какой-либо программой. Она же вам и должна создать тестовую HTML страничку.
Выдерите оттуда кусок про тайлы и вставьте себе

Don't forget support my developments: post review in JED , donate , help with translation ;)

Please Log in or Create an account to join the conversation.

  • Asmadey
  • Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
11 years 2 weeks ago - 11 years 2 weeks ago #1367 by Asmadey
Replied by Asmadey on topic Пользовательские карты
Это я уже сделал. Тайлы я делал пhограммой SAS Plannet, она не создает html, только сохраняет тайлы. Поэтому просто вручную поправил и все. Сейчас ищу как вторым слоем карту яндекса сделать.
Last edit: 11 years 2 weeks ago by Asmadey.

Please Log in or Create an account to join the conversation.

More
11 years 2 weeks ago #1368 by Dima
Я пост не увидел, вот и написал.

Если найдете пример - киньте мне, я его посмотрю. Если не надо там напильником и с бубном - перализую.

Don't forget support my developments: post review in JED , donate , help with translation ;)

Please Log in or Create an account to join the conversation.

  • Asmadey
  • Topic Author
  • Offline
  • Junior Member
  • Junior Member
More
11 years 1 week ago #1390 by Asmadey
Replied by Asmadey on topic Пользовательские карты
Тут подкинули мне функцию вызова тайлов яндекса.
Сам пока ни пробовал.
function (tile, zoom) {
return "http://vec01.maps.yandex.net/tiles?l=map&x="+tile[0]+"&y="+tile[1]+"&z="+zoom+"&lang=ru_RU";
}

Please Log in or Create an account to join the conversation.

Time to create page: 0.114 seconds

Donate


Go to top