Creative Commons Licence
Ski radius calculator by Wayne Naylor is licensed under a Creative Commons Attribution 4.0 International License.
Based on a work at www.brentaski.com/skiradius.

Note.
We have seen these calculators (which we wrote) offered for download on many suspicious websites
You are strongly advised NOT to download the calculators from anywhere other than here


 

 
Does this give the radius of a carved turn?
NO.  (See here for details)
You REALLY should read this before you put the calculator on your website?

Do I own the copyright of this?
YES

Can you copy it onto your own website?
YES.

Do you have to credit me for the JS codes?
It would be the polite thing to do.



Tip (mm)
Tail (mm)
Waist (mm)
E Length (mm)
Edge Angle








Note from Wayne:

I am not a professional web designer, so this (the JS, CSS, HTML, etc) is provided as is.



How to use this calculator on your own site.

IN THE SAME FOLDER as your calculator file (foobar.aspx)  - of course you can put it somewhere else, but then don't forget to changed the links in the Head.

Create a JS file (call it rad.js) and a CSS file (call it rad.css)

I have assumed that you know how to cut-and-paste the source of the above Div, if not then I'd suggest NOT doing any of this??

add this in to rad.js
add this into rad.css
function DegRad(degrees)
{
return degrees * (Math.PI/180);
}

function round(value, precision) {
var multiplier = Math.pow(10, precision || 0);
return Math.round(value * multiplier) / multiplier;
}

function sum() {
var txtTipVal = parseInt(document.getElementById('txtTip').value);
var txtTailVal = parseInt(document.getElementById('txtTail').value);
var txtWaistVal = parseInt(document.getElementById('txtWaist').value);
var txtELengthVal = parseInt(document.getElementById('txtELength').value);
var txtAngleVal = parseInt(document.getElementById('txtAngle').value);

var temp = (((((txtTipVal + txtTailVal)/4) -
(txtWaistVal/2)) / 2 ) + ((txtELengthVal * txtELengthVal))
/ ( 8 * (((txtTipVal + txtTailVal)/4) -
(txtWaistVal/2))))/1000;

var result = round(temp, 1);
var result2 = round(temp * Math.cos(DegRad(txtAngleVal)),1);


if (!isNaN(result)) {
document.getElementById('txtRadius').value = "Sidecut radius " + result + "m";

if (!isNaN(result2)) {
document.getElementById('txtTurn').value = "Ski Bend radius " + result2 + "m";
}}
}
.Error {
margin: 5px;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
-webkit-box-shadow: inset 2px 2px 3px rgba(0, 0, 0, 0.2);
-moz-box-shadow: inset 2px 2px 3px rgba(0, 0, 0, 0.2);
box-shadow: inset 2px 2px 3px rgba(0, 0, 0, 0.2);
padding: 5px;
background-color: #FF0000;
width: 60px;
text-align: right;
}
.inputs{
margin: 5px;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
-webkit-box-shadow: inset 2px 2px 3px rgba(0, 0, 0, 0.2);
-moz-box-shadow: inset 2px 2px 3px rgba(0, 0, 0, 0.2);
box-shadow: inset 2px 2px 3px rgba(0, 0, 0, 0.2);
padding: 5px;
background-color: #FFFFFF;
width: 60px;
text-align: right;
}
.results {
border-style: none;
margin: 5px;
text-align: center;
}
#holder{
width: 300px;
margin: auto;
}
#wrapper {
margin: auto;
width: 300px;
position: relative;
}
.float {
margin: 0;
padding: 0;
color: #000000;
}
.left { float:left; width:200px;}
.right {float:right; width:100px;}
#submit {
border-top: 1px solid #96d1f8;
background: #65a9d7;
background: -webkit-gradient(linear, left top, left bottom, from(#3e779d), to(#65a9d7));
background: -webkit-linear-gradient(top, #3e779d, #65a9d7);
background: -moz-linear-gradient(top, #3e779d, #65a9d7);
background: -ms-linear-gradient(top, #3e779d, #65a9d7);
background: -o-linear-gradient(top, #3e779d, #65a9d7);
padding: 5px 10px;
-webkit-border-radius: 8px;
-moz-border-radius: 8px;
border-radius: 8px;
-webkit-box-shadow: rgba(0,0,0,1) 0 1px 0;
-moz-box-shadow: rgba(0,0,0,1) 0 1px 0;
box-shadow: rgba(0,0,0,1) 0 1px 0;
text-shadow: rgba(0,0,0,.4) 0 1px 0;
color: white;
font-size: 14px;
font-family: Helvetica, Arial, Sans-Serif;
text-decoration: none;
vertical-align: middle;
margin-left: 5px;
}
#submit:hover {
cursor:hand;
}
.img_R {
float: right;
margin: 10px;
}