Клуб API Карт

Помощь в создании своей карты на базе API Яндекс.Карт

Александр
6 мая 2014, 17:58

имею в распоряжении несколько отрисованых карт размером 5000 - 7000 px.

Решил их внедрить на движок Яндекс карт,  спешу отметить опыта в прорамиронании нету никакого,  все делал по мануалам.

Нашел тему в сети http://webmap-blog.ru/yandex-maps/sozdanie-sobstvennoj-karty-s-ispolzovaniem-api-yandeks-kart-2-x . скачал программку нарезал фотку на тайлы залил на сайт вот что получилось. http://test.anapa.info/gp/map.html

Теперь о помощи. 

1) Как отображать карту только в ее границах?
2) убрать лишний зум - имею ввиду чтобы я зумил только до определеных границ. Чтоб было понятнее, мне ненужно чтобы я видел подложку только карту. 
 исходник карты тут  - http://yadi.sk/d/nweuymitPGawA если нужно
 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru" lang="ru">

<head>

    <title>Генплан МО Анапа</title>

    <script src="http://api-maps.yandex.ru/1.1/index.xml?key=ADtDpE0BAAAA1cU1IgIAPWClUB9s-IiOj9P6iiRLW4MT2WIAAAAAAAAAAACMdgGzWkeumHtgPQ7bAvyBjoO8xA==" type="text/javascript"></script>

    <script type="text/javascript">

        window.onload = function () {

            var options = {

                    tileUrlTemplate: "./%z/tile-%x-%y.jpg",

                    controls: {

                        typeControl: false,

                        miniMap: false,

                        toolBar: false,

                        scaleLine: false

                    },

                    scrollZoomEnabled: true,

                    mapCenter: new YMaps.GeoPoint(-174.745788574219, 84.5401399840571),

                    backgroundMapType: YMaps.MapType.NONE,

                    mapZoom: 10,

                    isTransparent: true,

                    smoothZooming: true,

                    layerKey: "my#layer",

                    mapType: {

                        name: "Генплан",

                        textColor: "#000000"

                    },

                    copyright: ""

                },

                map = new YMaps.Map(document.getElementById("YMapsID")),

                myData = new YMaps.TileDataSource(options.tileUrlTemplate, options.isTransparent, options.smoothZooming);

 

            myData.getTileUrl = function (tile, zoom) {

                return this.getTileUrlTemplate().replace(/%x/i, tile.x).replace(/%y/i, tile.y).replace(/%z/i, zoom);

            }

 

            var MyLayer = function () {

                return new YMaps.Layer(myData);

            }

            YMaps.Layers.add(options.layerKey, MyLayer);

 

            var mapLayers = options.backgroundMapType ? options.backgroundMapType.getLayers() : [],

                myMapType = new YMaps.MapType(YMaps.jQuery.merge(mapLayers, [ options.layerKey ]), options.mapType.name, { textColor: options.mapType.textColor });

 

            map.setCenter(options.mapCenter, options.mapZoom, myMapType);

            if (options.copyright) {

                map.addCopyright(options.copyright);

            }

 

            if (options.controls.typeControl) {

                map.addControl(new YMaps.TypeControl([ myMapType, YMaps.MapType.MAP, YMaps.MapType.SATELLITE, YMaps.MapType.HYBRID ], [1, 2, 3]));

            }

         

            if (options.controls.miniMap) {

                map.addControl(new YMaps.MiniMap());

            }

            if (options.controls.toolBar) {

                map.addControl(new YMaps.ToolBar());

            }

            if (options.controls.scaleLine) {

                map.addControl(new YMaps.ScaleLine());

            }

            if (options.scrollZoomEnabled) {

                map.enableScrollZoom();

            }

            map.addControl(new YMaps.Zoom());

        }

    </script>

</head>

<body>

    <div id="YMapsID" style="width:100%;height:800px"></div>

</body>

</html>

 

 

перепробывал что мог перечитал кучу всего не могу понять, помогите мне и всем таким как я.  

0 комментариев
Подписаться на комментарии к посту