diff options
| author | Adam Malczewski <[email protected]> | 2026-03-10 16:18:48 +0900 |
|---|---|---|
| committer | Adam Malczewski <[email protected]> | 2026-03-10 16:18:48 +0900 |
| commit | e542742c0525ec0971eb89daaf3e8fc1b30e48fb (patch) | |
| tree | 8dd9546e1af05832de8ca5bff1fd9165b0c5da39 /reference | |
| download | tirecalc-e542742c0525ec0971eb89daaf3e8fc1b30e48fb.tar.gz tirecalc-e542742c0525ec0971eb89daaf3e8fc1b30e48fb.zip | |
project init
Diffstat (limited to 'reference')
| -rw-r--r-- | reference/howto.mdown | 39 | ||||
| -rw-r--r-- | reference/tire-sizes.json | 74 |
2 files changed, 113 insertions, 0 deletions
diff --git a/reference/howto.mdown b/reference/howto.mdown new file mode 100644 index 0000000..6e338a4 --- /dev/null +++ b/reference/howto.mdown @@ -0,0 +1,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 = ''; + } +} +```` diff --git a/reference/tire-sizes.json b/reference/tire-sizes.json new file mode 100644 index 0000000..d101fc8 --- /dev/null +++ b/reference/tire-sizes.json @@ -0,0 +1,74 @@ +{ + "wheel_sizes": [ + { "label": "12.5\"", "diameter_mm": 203 }, + { "label": "14\"", "diameter_mm": 254 }, + { "label": "16\"", "diameter_mm": 305 }, + { "label": "20\"", "diameter_mm": 406 }, + { "label": "24\" BMX/Kids Bikes", "diameter_mm": 507 }, + { "label": "24\" Terry Bicycles", "diameter_mm": 520 }, + { "label": "24\"", "diameter_mm": 540 }, + { "label": "24\" Schwinn", "diameter_mm": 540 }, + { "label": "26\"", "diameter_mm": 559 }, + { "label": "650c", "diameter_mm": 571 }, + { "label": "650b", "diameter_mm": 584 }, + { "label": "27.5", "diameter_mm": 584 }, + { "label": "26 x 1 1/2\"", "diameter_mm": 584 }, + { "label": "650a", "diameter_mm": 590 }, + { "label": "26 x 1 3/8\"", "diameter_mm": 590 }, + { "label": "650", "diameter_mm": 597 }, + { "label": "26 x 1 1/4\"", "diameter_mm": 597 }, + { "label": "29er", "diameter_mm": 622 }, + { "label": "700c", "diameter_mm": 622 }, + { "label": "27 inch", "diameter_mm": 630 } + ], + "tire_sizes": [ + { "label": "18C", "diameter_mm": 18 }, + { "label": "19C", "diameter_mm": 19 }, + { "label": "20C", "diameter_mm": 20 }, + { "label": "21C", "diameter_mm": 21 }, + { "label": "23C", "diameter_mm": 23 }, + { "label": "25C", "diameter_mm": 25 }, + { "label": "26C", "diameter_mm": 26 }, + { "label": "28C", "diameter_mm": 28 }, + { "label": "30C", "diameter_mm": 30 }, + { "label": "32C", "diameter_mm": 32 }, + { "label": "35C", "diameter_mm": 35 }, + { "label": "38C", "diameter_mm": 38 }, + { "label": "40C", "diameter_mm": 40 }, + { "label": "44C", "diameter_mm": 44 }, + { "label": "50C", "diameter_mm": 50 }, + { "label": "56C", "diameter_mm": 56 }, + { "label": "1.00 inch", "diameter_mm": 25.4 }, + { "label": "1 1/8 inch", "diameter_mm": 28.575 }, + { "label": "1.25 inch", "diameter_mm": 31.75 }, + { "label": "1 3/8 inch", "diameter_mm": 34.925 }, + { "label": "1.4 inch", "diameter_mm": 35.56 }, + { "label": "1.5 inch", "diameter_mm": 38.1 }, + { "label": "1.75 inch", "diameter_mm": 44.45 }, + { "label": "1.95 inch", "diameter_mm": 49.5 }, + { "label": "2.00 inch", "diameter_mm": 50.8 }, + { "label": "2.10 inch", "diameter_mm": 53.34 }, + { "label": "2.125 inch", "diameter_mm": 54 }, + { "label": "2.20 inch", "diameter_mm": 55.88 }, + { "label": "2.25 inch", "diameter_mm": 57.15 }, + { "label": "2.30 inch", "diameter_mm": 58.42 }, + { "label": "2.35 inch", "diameter_mm": 59.69 }, + { "label": "2.40 inch", "diameter_mm": 60.69 }, + { "label": "2.50 inch", "diameter_mm": 63.5 }, + { "label": "2.60 inch", "diameter_mm": 66.04 }, + { "label": "2.70 inch", "diameter_mm": 68.58 }, + { "label": "2.80 inch", "diameter_mm": 71.12 }, + { "label": "2.90 inch", "diameter_mm": 73.66 }, + { "label": "3.0 inch", "diameter_mm": 76.2 }, + { "label": "3.1 inch", "diameter_mm": 78.74 }, + { "label": "3.2 inch", "diameter_mm": 81.28 }, + { "label": "3.3 inch", "diameter_mm": 83.82 }, + { "label": "3.4 inch", "diameter_mm": 86.36 }, + { "label": "3.5 inch", "diameter_mm": 88.9 }, + { "label": "3.6 inch", "diameter_mm": 91.44 }, + { "label": "3.7 inch", "diameter_mm": 93.98 }, + { "label": "3.8 inch", "diameter_mm": 96.52 }, + { "label": "3.9 inch", "diameter_mm": 99.06 }, + { "label": "4.0 inch", "diameter_mm": 101.6 } + ] +} |
