можно делать яндекс карты на основании своих изображений
<!DOCTYPE html>
<html>
<head>
<title>Примеры. Создание собственной карты</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="//api-maps.yandex.ru/2.0/?load=package.standard&lang=ru-RU" type="text/javascript"></script>
<script type="text/javascript">
var myMap;
ymaps.ready(init);
function init () {
// Создаем проекцию для декартовой системы координат.
var myProjection = new ymaps.projection.Cartesian([
// Определяем границы области отображения в декартовых координатах.
[-1, -1],
[1, 1]
]),
// Создадим собственный слой карты:
MyLayer = function () {
return new ymaps.Layer(
// Зададим функцию, преобразующую номер тайла
// и уровень масштабировая в URL тайла на сервере.
function (tile, zoom) {
return "http://mt.gmapuploader.com/tiles/FVSH1JsvdT/tile-" + zoom + "-" +
(tile[1] * Math.pow(2, zoom) + tile[0]) + ".jpg";
}
);
};
// Добавим конструктор слоя в хранилище слоёв под ключом my#layer.
ymaps.layer.storage.add('my#layer', MyLayer);
// Создадим новый тип карты, состоящий только из нашего слоя тайлов,
// и добавим его в хранилище типов карты под ключом my#type.
ymaps.mapType.storage.add('my#type', new ymaps.MapType(
'Схема',
['my#layer']
));
// Создадим карту в заданной системе координат.
myMap = new ymaps.Map('map', {
center:[0, 0],
zoom:2,
type:'my#type'
}, {
maxZoom:4, // Максимальный коэффициент масштабирования для заданной проекции.
minZoom:2, // Минимальный коэффициент масштабирования.
projection:myProjection
});
// Добавим миникарту и кнопку изменения масштаба на нашу карту.
myMap.controls
.add(new ymaps.control.MiniMap({
type:'my#type'
}))
.add('smallZoomControl', { right:5, top:5 });
}
</script>
</head>
<style type="text/css">
html, body, #map {
width: 100%;
height: 100%;
}
body {
margin: 0;
padding: 0;
}
</style>
<body>
<div id="map"></div>
</body>
</html>