blob: 6e338a4e0a504fac75e42fb6a675cac0811e8d9f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
### 1. File containing the relevant code
The logic is embedded directly within the HTML file you provided: `Tire Size Calculator.html` (specifically between lines 2944 and 2981).
### 2. How the calculations are done
The math is based on finding the circumference of the wheel (`Circumference = Pi * Diameter`).
1. **Total Diameter:** It takes the **Rim Diameter** (`r`) and adds it to twice the **Tire Width/Diameter** (`t`) because the tire sits on both the top and bottom of the rim. This gives the total wheel diameter: `(2 * t + r)`.
2. **Circumference:** It multiplies the total diameter by `3.13772`. This is a slightly modified value of Pi (π ≈ 3.14159), which is commonly used in cycling to account for the tire compressing under the rider's weight (often called "roll-out" circumference).
3. **Conversions:** Once the circumference is calculated in millimeters (`d`), it converts it to:
- **Centimeters:** Divides by 10.
- **Inches:** Divides by 25.4.
- **MPH Setting:** Divides by 1.6 (likely a specific calibration setting for their computers, converting km to miles).
### 3. Relevant Code
Here is the exact JavaScript snippet from the file that handles this logic:
````javascript
function Recalc() {
// Get Rim and Tire values in millimeters
var r = parseFloat(document.Calc.RimDiameter.value);
var t = parseFloat(document.Calc.TireDiameter.value);
if (r > 0 && t > 0) {
// Calculate circumference in mm
var d = 3.13772 * (2 * t + r);
// Output the rounded values
document.Calc.mm.value = Math.round(d);
document.Calc.cm.value = Math.round(d / 10);
document.Calc.inches.value = Math.round(10 * d / 25.4) / 10;
document.Calc.MPH.value = Math.round(d / 1.6);
} else {
// Clear fields if inputs are invalid
document.Calc.mm.value = '';
document.Calc.cm.value = '';
document.Calc.inches.value = '';
document.Calc.MPH.value = '';
}
}
````
|