<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Hautpoul on Blog GoHugo de Fredô : Linux, Proxmox, IA, Trail, Course, Randonnée, Gravel, Ski de Randonnée</title>
    <link>https://move.cyber-neurones.org/tags/hautpoul/</link>
    <description>Recent content in Hautpoul on Blog GoHugo de Fredô : Linux, Proxmox, IA, Trail, Course, Randonnée, Gravel, Ski de Randonnée</description>
    <generator>Hugo</generator>
    <language>fr</language>
    <lastBuildDate>Tue, 16 Apr 2019 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://move.cyber-neurones.org/tags/hautpoul/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Balade à Mazamet : La passerelle d&#39;Hautpoul</title>
      <link>https://move.cyber-neurones.org/post/2019/04/2019-04-16-balade-a-mazamet-la-passerelle-dhautpoul/</link>
      <pubDate>Tue, 16 Apr 2019 00:00:00 +0000</pubDate>
      <guid>https://move.cyber-neurones.org/post/2019/04/2019-04-16-balade-a-mazamet-la-passerelle-dhautpoul/</guid>
      <description>&lt;p&gt;En résumé :&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Très grand parking pour le départ.&lt;/li&gt;&#xA;&lt;li&gt;Distance : 9 km.&lt;/li&gt;&#xA;&lt;li&gt;Dénivelé : 390 m.&lt;/li&gt;&#xA;&lt;li&gt;Pour plus d&amp;rsquo;information : &lt;a href=&#34;http://www.ville-mazamet.com/mazamet-culture-et-divertissements/page-la-passerelle_2-4_9.htm&#34;&gt;http://www.ville-mazamet.com/mazamet-culture-et-divertissements/page-la-passerelle_2-4_9.htm&lt;/a&gt; &lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Le parcours :&lt;/p&gt;&#xA;&lt;p&gt;&#xA;&#xA;&lt;link rel=&#34;stylesheet&#34; href=&#34;https://move.cyber-neurones.org/gpx-shortcode/leaflet/leaflet.css&#34; crossorigin=&#34;&#34; /&gt;&#xA;&lt;link rel=&#34;stylesheet&#34; href=&#34;https://move.cyber-neurones.org/gpx-shortcode/style.css&#34; /&gt;&#xA;&lt;link rel=&#34;stylesheet&#34; href=&#34;https://move.cyber-neurones.org/gpx-shortcode/leaflet-distance-marker.css&#34; /&gt;&#xA;&lt;script src=&#34;https://move.cyber-neurones.org/gpx-shortcode/leaflet/leaflet.js&#34;&gt;&lt;/script&gt;&#xA;&lt;script src=&#34;https://move.cyber-neurones.org/gpx-shortcode/leaflet.geometryutil.js&#34;&gt;&lt;/script&gt;&#xA;&lt;script src=&#34;https://move.cyber-neurones.org/gpx-shortcode/leaflet-distance-marker.js&#34;&gt;&lt;/script&gt;&#xA;&lt;script src=&#34;https://cdnjs.cloudflare.com/ajax/libs/leaflet-gpx/1.7.0/gpx.min.js&#34;&gt;&lt;/script&gt;&#xA;&#xA;&#xA;&lt;section id=&#34;container&#34; class=&#34;gpx&#34;&gt;&#xA;  &lt;div class=&#34;map&#34; id=&#34;map-&#34;&gt;&lt;/div&gt;&#xA;  &lt;footer&gt;&#xA;    &#xA;    &#xA;    &#xA;      &lt;ul class=&#34;info&#34;&gt;&#xA;        &lt;li&gt;&lt;input type=&#34;checkbox&#34; checked class=&#34;tracks&#34; track-id=&#34;0&#34;/&gt;&lt;/li&gt;&#xA;        &lt;li style=&#34;color:blue&#34;&gt;&amp;#9632;&lt;/li&gt;&#xA;        &#xA;        &lt;li&gt;&lt;/li&gt;&#xA;        &lt;li class=&#34;start-Haupoul.gpx&#34;&gt;&lt;/li&gt;&#xA;        &lt;li class=&#34;distance-Haupoul.gpx&#34;&gt;&lt;/li&gt;&#xA;        &lt;li class=&#34;duration-Haupoul.gpx&#34;&gt;&lt;/li&gt;&#xA;        &lt;li class=&#34;elevation-Haupoul.gpx&#34;&gt;&lt;/li&gt;&#xA;        &lt;li&gt;&lt;a href=&#34;Haupoul.gpx&#34;&gt;Download&lt;/a&gt;&lt;/li&gt;&#xA;      &lt;/ul&gt;&#xA;    &#xA;  &lt;/footer&gt;&#xA;&lt;/section&gt;&#xA;&#xA;&lt;script&gt;&#xA;  var urls = new Array(&#34;Haupoul.gpx&#34;,)&#xA;  var mapid = &#34;map-&#34;;&#xA;  var container = document.getElementById(&#34;container&#34;);&#xA;  var colors = [&#34;blue&#34;,&#34;darkblue&#34;,&#34;purple&#34;];&#xA;  var layers = new Array();&#xA;    &#xA;  &#xA;  var map = L.map(mapid, { fullscreenControl: true, scrollWheelZoom: false });&#xA;  &#xA;  &#xA;  &#xA;  &#xA;  &#xA;  &#xA;  &#xA;  &#xA;  createLayer(&#34;https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png&#34;, &#34;© \u003ca href=\&#34;https://www.openstreetmap.org/copyright\&#34;\u003eOpenStreetMap\u003c/a\u003e contributors&#34;,  1 ,  20 ,  null ,  null ).addTo(map);&#xA;  &#xA;&#xA;  var control = L.control.layers(null, null).addTo(map);&#xA;  var bounds = null;&#xA;  urls.forEach(function(url, index) {&#xA;    addTrack(urls[index], index, map);&#xA;  });&#xA;  &#xA;  &#xA;  document.addEventListener(&#34;DOMContentLoaded&#34;, function(){&#xA;    &#xA;    &#xA;    Array.from(document.getElementsByClassName(&#34;location&#34;)).forEach(addMarker);&#xA;    &#xA;    &#xA;    document.querySelectorAll(&#34;.tracks&#34;).forEach(function(item) {&#xA;      item.checked = true;&#xA;    });&#xA;  });&#xA;  &#xA;  &#xA;  document.querySelectorAll(&#34;.tracks&#34;).forEach(function(item) {&#xA;    item.addEventListener(&#34;click&#34;, function() {&#xA;      var id = this.getAttribute(&#34;track-id&#34;);&#xA;      if (event.currentTarget.checked) {&#xA;        showTrack(id);&#xA;      } else {&#xA;        hideTrack(id);&#xA;      }&#xA;    })&#xA;  });&#xA;  &#xA;  &#xA;  function addTrack(url, index, map) {&#xA;    layers[index]=new L.GPX(url, {&#xA;      gpx_options: {&#xA;        joinTrackSegments: false&#xA;      },&#xA;      async: true,&#xA;      marker_options: {&#xA;        startIconUrl: &#34;/gpx-shortcode/pin-icon-start.png&#34;,&#xA;        endIconUrl: &#34;/gpx-shortcode/pin-icon-end.png&#34;,&#xA;        shadowUrl: &#34;/gpx-shortcode/pin-shadow.png&#34;,&#xA;      },&#xA;      &#xA;      polyline_options: {color: colors[index % colors.length], distanceMarkers: true, smoothFactor: 0.5 }&#xA;    }).on(&#34;loaded&#34;, function(e) {&#xA;      var gpx = e.target;&#xA;      if (bounds === null) {&#xA;        bounds = gpx.getBounds();&#xA;      }&#xA;      else&#xA;      {&#xA;        bounds.extend(gpx.getBounds());&#xA;      }&#xA;      map.fitBounds(bounds);&#xA;      control.addOverlay(gpx, gpx.get_name());&#xA;      addMetadata(gpx, url);&#xA;    });&#xA;    layers[index].addTo(map);&#xA;  }&#xA;  &#xA;  function showTrack(id) {&#xA;    layers[id].addTo(map);&#xA;  }&#xA;  &#xA;  function hideTrack(id) {&#xA;    layers[id].removeFrom(map);&#xA;  }&#xA;  &#xA;  &#xA;  function createLayer(url, attribution, minZoom, maxZoom, bounds, inverseBounds) {&#xA;    var layer = L.tileLayer(url, { attribution: attribution, minZoom: minZoom, maxZoom: maxZoom});&#xA;    if (bounds != null) {&#xA;      &#xA;      layer.options.bounds = new L.LatLngBounds(&#xA;        new L.LatLng(bounds[0], bounds[1]),&#xA;        new L.LatLng(bounds[2], bounds[3]));&#xA;    }&#xA;    if (inverseBounds != null) {&#xA;      layer.options.inverseBounds = new L.LatLngBounds(&#xA;        new L.LatLng(inverseBounds[0], inverseBounds[1]),&#xA;        new L.LatLng(inverseBounds[2], inverseBounds[3]));&#xA;    }&#xA;    return layer;&#xA;  }&#xA;&#xA;  &#xA;  function addMarker(link) {&#xA;    lat = link.getAttribute(&#34;lat&#34;);&#xA;    lon = link.getAttribute(&#34;lon&#34;);&#xA;    text = link.textContent;&#xA;    name = link.getAttribute(&#34;name&#34;);&#xA;    title = (name != &#34;&#34;) ? name : text;&#xA;    url = link.getAttribute(&#34;link&#34;);&#xA;    if (url != &#34;&#34;)&#xA;    {&#xA;      title = &#34;&lt;a target=\&#34;_blank\&#34; href=\&#34;&#34; + url + &#34;\&#34;&gt;&#34; + title + &#34;&lt;/a&gt;&#34;;&#xA;    }&#xA;    marker = L.marker([lat, lon]).addTo(map);&#xA;    marker.bindPopup(title).openPopup();&#xA;  }&#xA;  &#xA;  &#xA;  function addMetadata(gpx, url) {&#xA;    var date = gpx.get_start_time();&#xA;    var datestring = date.getFullYear() + &#34;-&#34; + (date.getMonth()+1).toString().padStart(2, &#34;0&#34;) + &#34;-&#34; + date.getDate().toString().padStart(2, &#34;0&#34;)  + &#34; &#34; + date.getHours().toString().padStart(2, &#34;0&#34;) + &#34;:&#34; + date.getMinutes().toString().padStart(2, &#34;0&#34;);&#xA;    _c(&#34;start-&#34; + url).textContent = (date &gt; 0) ? datestring : &#34;&#34;;&#xA;    _c(&#34;distance-&#34; + url).textContent = &#34;Distance: &#34; + (gpx.get_distance() / 1000).toFixed(2) + &#34; km&#34;;&#xA;    var duration = gpx.get_moving_time();&#xA;    _c(&#34;duration-&#34; + url).textContent = (duration &gt; 0) ? &#34;Duration: &#34; + gpx.get_duration_string(duration) : &#34;&#34;;&#xA;    _c(&#34;elevation-&#34;+ url).textContent = `Elevation: ${gpx.get_elevation_gain().toFixed(0)} m, -${gpx.get_elevation_loss().toFixed(0)} m, net:  ${(gpx.get_elevation_gain() - gpx.get_elevation_loss()).toFixed(0)}  m`;&#xA;  }&#xA;  &#xA;  &#xA;  function _c(c) {&#xA;    return container.getElementsByClassName(c)[0];&#xA;  }&#xA;&lt;/script&gt;&#xA; Quelques photos :&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
