You could have used: http://www.analyzemath.com/Geometry_calculators/right_triangle_calculator.html
Here's the maths:
1) Flat distance 1.272 @ 38.6 degrees gives an ascent of 1.01542425 and a ramp distance of 1.62759651.
2) Flat distance 0.612 @ 41.7 degrees gives an ascent of 0.54527210 and a ramp distance of 0.81967412.
Total ascent = 1.56069635
3) Flat distance 1.249 @ 35.9 degrees gives a descent of 0.90412521 and a ramp distance of 1.54189604.
4) Descent required to TC1 is 1.56069635 - 0.90412521 = 0.65657114. Flat distance 0.887 and descent 0.65657114 gives a ramp distance of 1.10356452.
Total distance for TC2: 1.62759651 + 0.81967412 + 1.54189604 + 1.10356452 = 5.09273119
Here's a Javascript program which gives the asnswer.
var f1 = 1.272, f2 = 0.612, f3 = 1.249, f4 = 0.887;
var d1 = 38.6, d2 = 41.7, d3 = 35.9, d4;
var a1 = f1*Math.tan(d1 * Math.PI/180);
document.write("Ascent 1 = "+a1);
var l1 = f1/Math.cos(d1 * Math.PI/180);
document.write("Distance 1 = "+l1);
var a2 = f2*Math.tan(d2 * Math.PI/180);
document.write("Ascent 2 = "+a2);
var l2 = f2/Math.cos(d2 * Math.PI/180);
document.write("Distance 2 = "+l2);
var ta = a1 + a2;
document.write("Total Ascent = "+ta);
var a3 = f3*Math.tan(d3 * Math.PI/180);
document.write("Descent 1 = "+a3);
var l3 = f3/Math.cos(d3 * Math.PI/180);
document.write("Distance 3 = "+l3);
var a4 = a1 + a2 - a3;
document.write("Descent Required = "+a4);
var l4 = Math.sqrt(Math.pow(a4,2)+Math.pow(f4,2));
document.write("Distance 4 = "+l4);
var tl = l1 + l2 + l3 + l4;
document.write("Total Distance = "+tl);