Доброго дня!
У меня есть некоторый слой, нарезанный по масштабам на тайлы. Этот слой я использовал для подключения на яндекс api.
Как максимально просто подключить эти тайлы отдельным слоем в OpenLayers?. Возможно с использованием MapServer.
Создание карты из тайлов
-
- Участник
- Сообщения: 66
- Зарегистрирован: 04 сен 2012, 11:28
- Репутация: 0
- Denis Rykov
- Гуру
- Сообщения: 3376
- Зарегистрирован: 11 апр 2008, 21:09
- Репутация: 529
- Ваше звание: Author
- Контактная информация:
Re: Создание карты из тайлов
В общем случае - поднять что-то типа twms или MapProxy и опубликовать ваши данные, например по TMS или WMS. Либо, если тайлы в схеме XYZ, то можно сразу подключить в OpenLayers.
Spatial is now, more than ever, just another column- The Geometry Column.
-
- Участник
- Сообщения: 66
- Зарегистрирован: 04 сен 2012, 11:28
- Репутация: 0
Re: Создание карты из тайлов
Тайлы в схеме XYZ, но резалось все под яндекс api.
Пытаюсь подключить так:
вижу картинки, но проекции не совпадают. И там где тайлов нет, заливается все красным.
Пытаюсь подключить так:
Код: Выделить всё
var lay = new OpenLayers.Layer.OSM("Local Tiles", "tile/${z}/tile-${x}-${y}.png", {alpha: true, isBaseLayer: false});
-
- Участник
- Сообщения: 66
- Зарегистрирован: 04 сен 2012, 11:28
- Репутация: 0
Re: Создание карты из тайлов
Так как, все таки, сразу подключить в OpenLayers?
-
- Новоприбывший
- Сообщения: 1
- Зарегистрирован: 21 янв 2013, 13:27
- Репутация: 0
Re: Создание карты из тайлов
Присоединяюсь к вопросу. Интересует также где можно узнать про структуру каталогов для TMS?Malig писал(а):Так как, все таки, сразу подключить в OpenLayers?
-
- Участник
- Сообщения: 66
- Зарегистрирован: 04 сен 2012, 11:28
- Репутация: 0
Re: Создание карты из тайлов
Код: Выделить всё
new OpenLayers.Layer.TMS("слой", "http://map.ru/vect/",
{layername: "tiles",
isBaseLayer:false,
type: "png",
'getURL': get_my_url,
visibility: true})
function get_my_url (bounds) {
var res = this.map.getResolution();
var x = Math.round ((bounds.left - this.maxExtent.left) / (res * this.tileSize.w));
var y = Math.round ((this.maxExtent.top - bounds.top) / (res * this.tileSize.h));
var z = this.map.getZoom();
var PyramidFolderName = makePyramidFolderName(x, y)
var path = z + "/"+PyramidFolderName+"tile-" + x + "-" + y + "." + this.type;
var url = this.url;
if (url instanceof Array) {
url = this.selectUrl(path, url);
}
return url + path;
}
У меня тьма тайлов была, потому еще раскладывались по папкам кучками. Путь к папкам составлялся в PyramidFolderName();
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость