Как создать полилинию листовки после загрузки дорожки Gpx с разными цветамиJavascript

Форум по Javascript
Ответить Пред. темаСлед. тема
Гость
 Как создать полилинию листовки после загрузки дорожки Gpx с разными цветами

Сообщение Гость »


Я использую скрипт для загрузки треков gpx прямо на карту, и он отлично работает.

https://github.com/shramov/leaflet-plugins

сердце сценария

var track = new L.GPX('fells_loop.gpx', { асинхронный: правда, display_wpt: ложь }).on('loaded', function (e) { map.fitBounds(e.target.getBounds()); }).addTo(карта); Файл GPX загружается и конвертируется с помощью этого скрипта

L.GPX = L.FeatureGroup.extend({ инициализировать: функция (gpx, параметры) { L.Util.setOptions(это, параметры); this._gpx = gpx; this._layers = {}; если (gpx) { this.addGPX(gpx, options, this.options.async); } }, loadXML: функция (url, cb, options, async) { если (async === не определено) async = this.options.async; если (опции === не определены) options = this.options; вар req = новое окно.XMLHttpRequest(); req.open('GET', URL, асинхронный); пытаться { req.overrideMimeType('text/xml'); // не поддерживается IE } поймать (е) {} req.onreadystatechange = функция () { если (req.readyState !== 4) return; if (req.status === 200) cb(req.responseXML, options); }; req.send (ноль); }, _humanLen: функция (л) { если (l < 2000) return l.toFixed(0) + 'm'; еще return (l/1000).toFixed(1) + 'км'; }, _polylineLen: функция (линия)//линия — это L.Polyline() { вар ll = line._latlngs; вар d = 0, p = ноль; for (var i = 0; i < ll.length; i++) { если (я && р) d += p.distanceTo(ll); р = ll[я]; } вернуть д; }, addGPX: функция (URL, параметры, асинхронный) { вар _this = это; var cb = функция (gpx, options) { _this._addGPX(gpx, options); }; this.loadXML(url, cb, параметры, асинхронный); }, _addGPX: функция (gpx, параметры) { var Layers = this.parseGPX(gpx, options); if (!layers) возвращается; this.addLayer(слои); this.fire('загружено'); }, parseGPX: функция (xml, параметры) { var j, i, el, Layers = []; var name = false, tags = [['rte','rtept'], ['trkseg','trkpt']]; for (j = 0; j < tags.length; j++) { el = xml.getElementsByTagName(tags[j][0]); for (i = 0; i
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Javascript»