Le Discese di Agolla
Due belle discese, ben conosciute dai praticanti di moto enduro, che scendono per i boschi di Agolla e soddisfano i bikers tecnici ed amanti dell'all-mountain più genuino!
http://itinerari.mtb-forum.it/tours/view/4058
Two beautiful descents, well known to practitioners of enduro, that go down to the woods Agolla and meet the technical bikers and lovers of the all-mountain more genuine!
Agolla (la Via dei Santi)
Da Agolla si sale sui Piani di Montelago ed ancora, con un ripido e panoramico sentiero, al Monte di Mistrano (conosciuto come Le Poccette). Sull'ampia sella...
Da Sefro si sale il fianco meridionale del Monte Vermenone per circa 6 km fino ad arrivare ad un tornante dove si lascia la strada bianca per un sentiero...
Sorti (Grotta del B. Bernardo)
Da Sorti si sale su asfalto per l'altopiano di Montelago; al culmine della salita si svolta a destra su sterrata fino ai Piani di Sardigliano, continuando poi...
Bella ascensione al Monte Vermenone con una lunga ma facile salita che inizia da Pontile, che noi abbiamo raggiunto da San Cassiano di Fiuminata con un antico...
Report track #4447 Inappropriate/wrong Title, Description or Characteristic Inappropriate/wrong Photo or it violates a Copyright Spam or inappropriate Comment Track is duplicated or too similar to others Other issue (Please leave some additional comments)
"); } function segmentOut(){ polylineSegmentOver.setLatLngs([[0,0],[0,0]]); //L.marker(data.track[data.track.length - 1], {icon: reddot}).addTo(map) // .bindPopup("End point"); } function segmentClick(start, end, thisSegment){ polylineSegmentClick.setLatLngs(polyline.getLatLngs().slice(start,end+1)); d3.selectAll(".area").style("opacity", 1); thisSegment.style("opacity", 0.5); //L.marker(data.track[data.track.length - 1], {icon: reddot}).addTo(map) // .bindPopup("End point"); } $.ajax({ url: '/tools/gettrack.php', type: 'POST', dataType: 'json', data: {track: '4447', type: 'clean', all: 'false'} }) .done(function(data) { polyline = L.polyline(data.track, {color: "purple"}).addTo(map).bindPopup("Ride me!"); L.marker(data.track[data.track.length - 1], {icon: reddot}).addTo(map) .bindPopup("End point"); L.marker(data.track[0], {icon: greendot}).addTo(map).bindPopup("Start point"); var extentControl = L.Control.extend({ options: { position: 'topright' }, onAdd: function(map) { var llBounds = polyline.getBounds(); var container = L.DomUtil.create('div', 'leaflet-bar leaflet-control leaflet-control-locate'); container.innerHTML = ''; container.title = "Center track"; $(container).on('click', function(e) { map.fitBounds(llBounds); e.stopPropagation(); }); return container; } }); map.addControl(new extentControl()); L.control.fullscreen({ position: 'topleft', // change the position of the button can be topleft, topright, bottomright or bottomleft, defaut topleft forceSeparateButton: true, // force seperate button to detach from zoom buttons, default false }).addTo(map); //map.fitBounds(polyline.getBounds(), {padding: [10,10]}); map.fitBounds(polyline.getBounds()); ////////////////////////////////////////////////graph stuff var x = d3.scale.linear() .range([0, width]); var y = d3.scale.linear() .range([height, 0]); var xAxis = d3.svg.axis() .scale(x) .orient("bottom"); var yAxis = d3.svg.axis() .scale(y) .orient("left"); var line = d3.svg.line() .x(function(d) { return x(d[0]); }) .y(function(d) { return y(d[1]); }); var svg = d3.select(document.getElementById('graph')).append("svg") .attr("id", "chart") .attr("width", width + margin.left + margin.right) .attr("height", height + margin.top + margin.bottom) .attr("fill", "white") .append("g") .attr("id", "translate") .attr("transform", "translate(" + margin.left + "," + margin.top + ")") .attr("pointer-events", "all") .append('svg:g') .attr("id", "scale"); var max_x = data.graph[data.graph.length - 1][0]; var max_y = d3.max(data.graph, function(d) { return Math.max(d[1]); }); max_y = max_y + 50; // add a top margin if (max_y < 500) { max_y = 500; } x.domain(d3.extent(data.graph, function(d) { return d[0]; })); y.domain([0, max_y]); var step = 0.5; var counter = Math.floor(max_x / step); if (counter > 40) { counter = 40; step = max_x / 40; } else { step = max_x / counter; } ; var end = 0; var start = 0; var slope = 0; var colour = "areagreen"; var area = d3.svg.area() //.interpolate("basis") .x(function(d) { return x(d[0]); }) .y0(height) .y1(function(d) { return y(d[1]); }); for (var i = 0; i < counter; i++) { while ((data.graph[end][0] < (step * (i + 1))) && (end < data.graph.length - 1)) { end++; } ; slope = (data.graph[end][1] - data.graph[start][1]) / (data.graph[end][0] - data.graph[start][0]) / 1000; colour = "areagreen"; if (slope > 0.16) { colour = "areapurple"; } else if (slope > 0.12) { colour = "areared"; } else if (slope > 0.08) { colour = "areaorange"; } else if (slope > 0.04) { colour = "areayellow"; } svg.append("path") .datum([(data.graph[end]).concat([end]), (data.graph[start]).concat([start])]) .attr("class", "area "+colour) .attr("d", area) .on("click", function(){ segmentClick(d3.select(this).datum()[1][2],d3.select(this).datum()[0][2],d3.select(this)); }) .on("mouseover", function(){ this.style.cursor = 'pointer'; segmentOver(d3.select(this).datum()[1][2],d3.select(this).datum()[0][2]); }) .on("mouseout", function(){ segmentOut(); }); svg.append("path") .datum([data.graph[end], data.graph[start]]) .attr("class", "line") .attr("d", line); svg.append("text") .attr("class", "xlabel") .attr("class", "shadow") .style("text-anchor", "middle") .attr("y", height - 5) .attr("x", width * ((data.graph[start][0] + data.graph[end][0]) / 2) / max_x) .text(((slope * 100).toFixed(0)).toString() + "%"); svg.append("text") .attr("class", "xlabel") .style("text-anchor", "middle") .attr("y", height - 5) .attr("x", width * ((data.graph[start][0] + data.graph[end][0]) / 2) / max_x) .text(((slope * 100).toFixed(0)).toString() + "%"); start = end; svg.append("text") .attr("transform", "rotate(-90)") .attr("class", "ylabel") .style("text-anchor", "start") .attr("x", 10 + height * data.graph[start][1] / max_y - height) .attr("y", 4 + width * data.graph[start][0] / max_x) .text(data.graph[start][1].toFixed(0)); } ; svg.append("g") .attr("class", "axis") .attr("transform", "translate(0," + height + ")") .call(xAxis) .append("text") .style("text-anchor", "end") .attr("x", width) .attr("y", 25) .text("km"); svg.append("g") .attr("class", "axis") .call(yAxis) .append("text") .attr("y", -10) .style("text-anchor", "end") .text("m"); svg.append("svg:title").text("Track elevation"); d3.select(window).on('resize', resize); resize(); //first resize to match actual window size }); function resize(scale) { // update width if (typeof scale === 'undefined') { var newWidth = $('.container').width()-31; var scale = newWidth / (width + margin.right + margin.left); } else { var newWidth = 1010; } var yscale = 3*scale/(2*(scale+0.5)); //console.log(yscale); //console.log(scale); d3.select("#scale").attr("transform", "scale(1,"+yscale+")"); d3.select("#translate").attr("transform", "translate(" + margin.left + "," + margin.top*yscale + ")"); var newHeight = (height + margin.top + margin.bottom)*yscale; d3.select("#chart").attr("height", newHeight); //d3.select("#chart").attr("width", newWidth); } function download_track(val) { $('#downloadtype').val(val); $('#downloadform').submit(); } $("a[href='#trackmap']").on('shown.bs.tab', function (e){ map.invalidateSize(); }); var content = ['