{"id":100094,"date":"2026-02-15T20:17:56","date_gmt":"2026-02-15T20:17:56","guid":{"rendered":"https:\/\/vibromera.eu\/?post_type=calculator&#038;p=100094"},"modified":"2026-02-15T20:17:56","modified_gmt":"2026-02-15T20:17:56","slug":"fit-tolerance-iso286","status":"publish","type":"calculator","link":"https:\/\/vibromera.eu\/nb\/calculators\/fit-tolerance-iso286\/","title":{"rendered":"Kalkulator for aksel-hull-tilpasning | ISO 286 | Toleranse og klaring"},"content":{"rendered":"\n<script type=\"application\/ld+json\">\n{\"@context\":\"https:\/\/schema.org\",\"@type\":\"WebApplication\",\"name\":\"Shaft-Hole Fit Calculator\",\"alternateName\":[\"ISO 286 Calculator\",\"Tolerance Calculator\",\"Clearance Fit Calculator\"],\"description\":\"Free online engineering calculator for shaft-hole fit tolerances per ISO 286. Calculates tolerance limits, clearance\/interference, and fit type with tolerance zone diagram.\",\"url\":\"https:\/\/vibromera.eu\/calculators\/fit-tolerance-iso286\/\",\"applicationCategory\":\"Engineering Calculator\",\"operatingSystem\":\"Any (Web Browser)\",\"offers\":{\"@type\":\"Offer\",\"price\":\"0\",\"priceCurrency\":\"EUR\"},\"creator\":{\"@type\":\"Organization\",\"name\":\"Vibromera\",\"url\":\"https:\/\/vibromera.eu\/\"},\"datePublished\":\"2024-01-01\",\"dateModified\":\"2025-02-14\",\"inLanguage\":\"en\",\"isAccessibleForFree\":true,\"featureList\":[\"ISO 286 fundamental deviations\",\"IT grades 5\u201311\",\"Common hole-shaft combinations\",\"Tolerance zone diagram\",\"Fit type classification\",\"URL parameter sharing\"],\"keywords\":\"ISO 286, shaft fit, hole tolerance, clearance, interference, transition fit, IT grade\"}\n<\/script>\n\n<script type=\"application\/ld+json\">\n{\"@context\":\"https:\/\/schema.org\",\"@type\":\"FAQPage\",\"mainEntity\":[\n{\"@type\":\"Question\",\"name\":\"What is H7\/h6?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"H7\/h6 is a common sliding fit combination per ISO 286. H7 is a hole with fundamental deviation H (lower limit = nominal) and IT grade 7. h6 is a shaft with fundamental deviation h (upper limit = nominal) and IT grade 6. This combination always produces a clearance fit, suitable for sliding or locational fits.\"}},\n{\"@type\":\"Question\",\"name\":\"What is the difference between clearance and interference fit?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"In a clearance fit, the shaft is always smaller than the hole, leaving a gap. In an interference fit, the shaft is always larger than the hole, requiring force or heat to assemble. A transition fit may result in either slight clearance or slight interference depending on actual manufactured dimensions.\"}},\n{\"@type\":\"Question\",\"name\":\"How do I read ISO 286 notation?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"ISO 286 notation uses a letter + number format. Uppercase letters (H, G, F...) denote holes; lowercase (h, g, f...) denote shafts. The letter defines the fundamental deviation (position of tolerance zone), and the number is the IT grade (tolerance width). Example: H7\/g6 means hole H grade 7 with shaft g grade 6.\"}},\n{\"@type\":\"Question\",\"name\":\"What are common shaft-hole fit combinations?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Common combinations include: H7\/h6 (sliding fit), H7\/g6 (close running fit), H7\/f7 (free running fit), H7\/k6 (transition\/location fit), H7\/n6 (tight transition fit), H7\/p6 (light press fit), H7\/s6 (heavy press fit). The hole-basis system (H hole) is most commonly used.\"}},\n{\"@type\":\"Question\",\"name\":\"What is an IT grade?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"IT (International Tolerance) grade defines the magnitude of the tolerance zone. Lower IT numbers mean tighter tolerances: IT5 and IT6 are for precision fits, IT7 is for general engineering, IT8\u2013IT9 for semi-precision, IT11 for rough work. Each step roughly multiplies tolerance by 1.6\u00d7.\"}}\n]}\n<\/script>\n\n<script type=\"application\/ld+json\">\n{\"@context\":\"https:\/\/schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[\n{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/vibromera.eu\/\"},\n{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Calculators\",\"item\":\"https:\/\/vibromera.eu\/calculators\/\"},\n{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Shaft-Hole Fit Calculator\",\"item\":\"https:\/\/vibromera.eu\/calculators\/fit-tolerance-iso286\/\"}\n]}\n<\/script>\n\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&#038;family=JetBrains+Mono:wght@400;500;600&#038;family=Fraunces:opsz,wght@9..144,700;9..144,800&#038;display=swap\" rel=\"stylesheet\">\n\n<style>\n:root {\n    --vc-bg: #f4f1ec;\n    --vc-surface: #ffffff;\n    --vc-surface-alt: #f8f6f2;\n    --vc-ink: #1a1a1a;\n    --vc-ink-secondary: #5a5650;\n    --vc-ink-muted: #8a857e;\n    --vc-accent: #c85a2a;\n    --vc-accent-hover: #b04d22;\n    --vc-accent-light: #fdf0ea;\n    --vc-blue: #2a5c8c;\n    --vc-blue-light: #eaf1f8;\n    --vc-green: #2a7a4b;\n    --vc-green-light: #eaf8ef;\n    --vc-yellow: #a67c00;\n    --vc-yellow-light: #fef9e8;\n    --vc-red: #b91c1c;\n    --vc-red-light: #fef2f2;\n    --vc-border: #d9d4cc;\n    --vc-border-light: #e8e4dd;\n    --vc-shadow: 0 1px 3px rgba(26,26,26,0.06), 0 4px 12px rgba(26,26,26,0.04);\n    --vc-shadow-lg: 0 4px 12px rgba(26,26,26,0.08), 0 16px 40px rgba(26,26,26,0.06);\n    --vc-radius: 8px;\n    --vc-radius-lg: 12px;\n    --vc-font: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\n    --vc-mono: 'JetBrains Mono', 'Consolas', 'Monaco', monospace;\n    --vc-display: 'Fraunces', Georgia, serif;\n}\n\n.vc-calculator {\n    font-family: var(--vc-font);\n    font-size: 15px;\n    line-height: 1.65;\n    color: var(--vc-ink);\n    max-width: 960px;\n    margin: 0 auto;\n    padding: 20px 16px 40px;\n    -webkit-font-smoothing: antialiased;\n}\n.vc-calculator *, .vc-calculator *::before, .vc-calculator *::after { box-sizing: border-box; }\n\n\/* \u2500\u2500 HEADER \u2500\u2500 *\/\n.vc-header { text-align: center; padding: 48px 24px 40px; position: relative; }\n.vc-header::after { content:''; position:absolute; bottom:0; left:50%; transform:translateX(-50%); width:80px; height:3px; background:var(--vc-accent); border-radius:2px; }\n.vc-header-eyebrow { font-family:var(--vc-mono); font-size:11px; font-weight:500; letter-spacing:0.15em; text-transform:uppercase; color:var(--vc-accent); margin:0 0 12px; }\n.vc-header-title { font-family:var(--vc-display); font-size:clamp(24px,4vw,36px); font-weight:800; line-height:1.15; color:var(--vc-ink); margin:0 0 16px; letter-spacing:-0.02em; }\n.vc-header-subtitle { font-size:15px; color:var(--vc-ink-secondary); margin:0 auto 20px; max-width:600px; }\n.vc-badges { display:inline-flex; gap:8px; flex-wrap:wrap; justify-content:center; }\n.vc-badge { font-family:var(--vc-mono); font-size:11px; font-weight:500; padding:4px 10px; border-radius:4px; background:var(--vc-surface); border:1px solid var(--vc-border); color:var(--vc-ink-secondary); }\n\n\/* \u2500\u2500 CARD \u2500\u2500 *\/\n.vc-card { background:var(--vc-surface); border:1px solid var(--vc-border); border-radius:var(--vc-radius-lg); box-shadow:var(--vc-shadow); overflow:hidden; margin-top:32px; }\n\n\/* \u2500\u2500 FORM \u2500\u2500 *\/\n.vc-form { padding:24px; }\n.vc-form-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:18px; }\n@media(max-width:700px) { .vc-form-grid { grid-template-columns:1fr; } }\n.vc-field { display:flex; flex-direction:column; }\n.vc-field-full { grid-column: 1 \/ -1; }\n.vc-label { font-size:12px; font-weight:600; letter-spacing:0.04em; text-transform:uppercase; color:var(--vc-ink-secondary); margin-bottom:6px; }\n.vc-label-hint { font-weight:400; text-transform:none; letter-spacing:0; color:var(--vc-ink-muted); font-size:11px; }\n.vc-select, .vc-input { width:100%; padding:10px 12px; border:1.5px solid var(--vc-border); border-radius:6px; font-family:var(--vc-font); font-size:14px; color:var(--vc-ink); background:var(--vc-surface); transition:border-color 0.15s, box-shadow 0.15s; }\n.vc-select { padding-right:36px; appearance:none; -webkit-appearance:none; cursor:pointer; background-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='16' height='16' fill='none' stroke='%235a5650' stroke-width='2'%3E%3Cpath d='M4 6l4 4 4-4'\/%3E%3C\/svg%3E\"); background-repeat:no-repeat; background-position:right 10px center; }\n.vc-select:focus, .vc-input:focus { outline:none; border-color:var(--vc-accent); box-shadow:0 0 0 3px rgba(200,90,42,0.12); }\n.vc-select:hover, .vc-input:hover { border-color:var(--vc-ink-muted); }\n\n\/* \u2500\u2500 PRESETS \u2500\u2500 *\/\n.vc-presets { display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; padding-top:18px; border-top:1px solid var(--vc-border-light); }\n.vc-presets-label { font-family:var(--vc-mono); font-size:11px; font-weight:500; letter-spacing:0.1em; text-transform:uppercase; color:var(--vc-ink-muted); width:100%; margin-bottom:2px; }\n.vc-preset-btn { padding:5px 12px; font-family:var(--vc-font); font-size:12px; font-weight:500; border:1px solid var(--vc-border); border-radius:6px; background:var(--vc-surface-alt); color:var(--vc-ink-secondary); cursor:pointer; transition:all 0.15s; }\n.vc-preset-btn:hover { border-color:var(--vc-accent); color:var(--vc-accent); background:var(--vc-accent-light); }\n\n\/* \u2500\u2500 RESULTS \u2500\u2500 *\/\n.vc-results { border-top:1px solid var(--vc-border-light); background:var(--vc-surface-alt); padding:0; max-height:0; overflow:hidden; transition:max-height 0.5s cubic-bezier(0.4,0,0.2,1), padding 0.3s; }\n.vc-results.vc-visible { max-height:4000px; padding:24px; }\n.vc-results-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:18px; }\n.vc-results-title { font-family:var(--vc-display); font-size:20px; font-weight:700; color:var(--vc-ink); margin:0; }\n.vc-copy-btn { display:inline-flex; align-items:center; gap:5px; padding:6px 12px; border:1px solid var(--vc-border); border-radius:6px; background:var(--vc-surface); font-family:var(--vc-font); font-size:12px; font-weight:500; color:var(--vc-ink-secondary); cursor:pointer; transition:all 0.15s; }\n.vc-copy-btn:hover { border-color:var(--vc-accent); color:var(--vc-accent); }\n.vc-copy-btn.vc-copied { background:var(--vc-green-light); border-color:var(--vc-green); color:var(--vc-green); }\n\n.vc-result-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:20px; }\n@media(max-width:500px) { .vc-result-grid { grid-template-columns:1fr; } }\n.vc-rcard { background:var(--vc-surface); border:1px solid var(--vc-border-light); border-radius:var(--vc-radius); padding:16px; transition:transform 0.2s; }\n.vc-rcard:hover { transform:translateY(-1px); }\n.vc-rcard-primary { border-color:var(--vc-accent); border-width:2px; background:linear-gradient(135deg, #fdf6f2 0%, var(--vc-surface) 100%); grid-column:1 \/ -1; }\n.vc-rcard-label { font-family:var(--vc-mono); font-size:10px; font-weight:500; letter-spacing:0.1em; text-transform:uppercase; color:var(--vc-ink-muted); margin-bottom:4px; }\n.vc-rcard-value { font-family:var(--vc-mono); font-size:22px; font-weight:600; color:var(--vc-ink); line-height:1.2; }\n.vc-rcard-primary .vc-rcard-value { font-size:28px; color:var(--vc-accent); }\n.vc-rcard-unit { font-size:14px; font-weight:400; color:var(--vc-ink-secondary); }\n.vc-rcard-sub { font-family:var(--vc-mono); font-size:12px; color:var(--vc-ink-muted); margin-top:4px; }\n\n\/* \u2500\u2500 FIT TYPE BADGES \u2500\u2500 *\/\n.vc-fit-clearance { background:var(--vc-green-light); border-color:var(--vc-green); }\n.vc-fit-clearance .vc-rcard-value { color:var(--vc-green); }\n.vc-fit-interference { background:var(--vc-red-light); border-color:var(--vc-red); }\n.vc-fit-interference .vc-rcard-value { color:var(--vc-red); }\n.vc-fit-transition { background:var(--vc-yellow-light); border-color:var(--vc-yellow); }\n.vc-fit-transition .vc-rcard-value { color:var(--vc-yellow); }\n\n\/* \u2500\u2500 TOLERANCE DIAGRAM \u2500\u2500 *\/\n.vc-diagram-wrap { margin:20px 0; background:var(--vc-surface); border:1px solid var(--vc-border-light); border-radius:var(--vc-radius); padding:20px; }\n.vc-diagram-title { font-family:var(--vc-mono); font-size:11px; font-weight:600; letter-spacing:0.1em; text-transform:uppercase; color:var(--vc-ink-muted); margin-bottom:12px; }\n\n\/* \u2500\u2500 COLLAPSIBLE SECTIONS \u2500\u2500 *\/\n.vc-section { margin-top:24px; border:1px solid var(--vc-border); border-radius:var(--vc-radius-lg); background:var(--vc-surface); box-shadow:var(--vc-shadow); overflow:hidden; }\n.vc-section-toggle { width:100%; display:flex; align-items:center; justify-content:space-between; padding:18px 24px; border:none; background:transparent; cursor:pointer; font-family:var(--vc-font); text-align:left; transition:background 0.15s; }\n.vc-section-toggle:hover { background:var(--vc-surface-alt); }\n.vc-section-toggle-text { display:flex; align-items:center; gap:10px; }\n.vc-section-icon { font-size:20px; line-height:1; }\n.vc-section-title { font-family:var(--vc-display); font-size:18px; font-weight:700; color:var(--vc-ink); margin:0; }\n.vc-section-chevron { width:20px; height:20px; color:var(--vc-ink-muted); transition:transform 0.3s; flex-shrink:0; }\n.vc-section.vc-open .vc-section-chevron { transform:rotate(180deg); }\n.vc-section-body { max-height:0; overflow:hidden; transition:max-height 0.4s cubic-bezier(0.4,0,0.2,1); }\n.vc-section.vc-open .vc-section-body { max-height:20000px; }\n.vc-section-inner { padding:0 24px 24px; border-top:1px solid var(--vc-border-light); }\n\n\/* \u2500\u2500 THEORY \u2500\u2500 *\/\n.vc-theory h3 { font-family:var(--vc-display); font-size:17px; font-weight:700; color:var(--vc-ink); margin:28px 0 10px; }\n.vc-theory h3:first-child { margin-top:20px; }\n.vc-theory p { font-size:14px; color:var(--vc-ink-secondary); margin:0 0 10px; }\n.vc-theory ul, .vc-theory ol { font-size:14px; color:var(--vc-ink-secondary); margin:0 0 12px 18px; padding:0; }\n.vc-theory li { margin-bottom:5px; }\n.vc-formula-box { background:var(--vc-surface-alt); border:2px solid var(--vc-border); border-radius:6px; padding:14px 20px; font-family:var(--vc-mono); font-size:16px; font-weight:500; text-align:center; margin:14px 0; color:var(--vc-ink); overflow-x:auto; }\n.vc-info-box { background:var(--vc-blue-light); border-left:3px solid var(--vc-blue); padding:14px 16px; border-radius:0 6px 6px 0; margin:14px 0; }\n.vc-info-box p { margin:0; font-size:14px; color:var(--vc-ink-secondary); }\n.vc-warning-box { background:var(--vc-yellow-light); border-left:3px solid var(--vc-yellow); padding:14px 16px; border-radius:0 6px 6px 0; margin:14px 0; }\n.vc-example-box { background:var(--vc-surface-alt); border:1px solid var(--vc-border-light); border-radius:6px; padding:16px; margin:14px 0; }\n.vc-example-title { font-family:var(--vc-mono); font-size:13px; font-weight:600; color:var(--vc-accent); margin-bottom:8px; }\n.vc-table { width:100%; border-collapse:collapse; margin:14px 0; font-size:13px; }\n.vc-table th, .vc-table td { padding:10px 12px; border:1px solid var(--vc-border-light); text-align:left; }\n.vc-table th { background:var(--vc-surface-alt); font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:0.05em; color:var(--vc-ink-secondary); }\n.vc-table tr:nth-child(even) { background:var(--vc-surface-alt); }\n@media(max-width:600px) { .vc-table { font-size:12px; } .vc-table th, .vc-table td { padding:8px; } }\n\n\/* \u2500\u2500 FAQ \u2500\u2500 *\/\n.vc-faq-list { display:flex; flex-direction:column; gap:8px; margin-top:20px; }\n.vc-faq-item { border:1px solid var(--vc-border-light); border-radius:6px; overflow:hidden; }\n.vc-faq-q { width:100%; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 16px; border:none; background:var(--vc-surface-alt); cursor:pointer; font-family:var(--vc-font); font-size:15px; font-weight:600; color:var(--vc-ink); text-align:left; transition:background 0.15s; }\n.vc-faq-q:hover { background:#ede9e3; }\n.vc-faq-chevron { width:16px; height:16px; color:var(--vc-ink-muted); flex-shrink:0; transition:transform 0.25s; }\n.vc-faq-item.vc-open .vc-faq-chevron { transform:rotate(180deg); }\n.vc-faq-a { max-height:0; overflow:hidden; transition:max-height 0.35s; }\n.vc-faq-item.vc-open .vc-faq-a { max-height:1200px; }\n.vc-faq-a-inner { padding:14px 16px; border-top:1px solid var(--vc-border-light); font-size:14px; color:var(--vc-ink-secondary); }\n.vc-faq-a-inner p { margin:0 0 8px; }\n.vc-faq-a-inner p:last-child { margin-bottom:0; }\n.vc-faq-a-inner ul { margin:4px 0 8px 16px; padding:0; }\n.vc-faq-a-inner li { margin-bottom:3px; }\n\n\/* \u2500\u2500 RELATED \u2500\u2500 *\/\n.vc-related { display:flex; flex-wrap:wrap; gap:10px; margin-top:16px; }\n.vc-related-link { display:inline-block; padding:8px 16px; font-family:var(--vc-font); font-size:13px; font-weight:600; background:var(--vc-surface-alt); color:var(--vc-ink-secondary); border:1px solid var(--vc-border); border-radius:var(--vc-radius); text-decoration:none; transition:all 0.15s; }\n.vc-related-link:hover { border-color:var(--vc-accent); color:var(--vc-accent); background:var(--vc-accent-light); }\n\n\/* \u2500\u2500 PROMO \u2500\u2500 *\/\n.vc-promo { margin-top:24px; padding:20px; background:linear-gradient(135deg, var(--vc-accent-light), var(--vc-surface)); border:1px solid var(--vc-border); border-radius:var(--vc-radius-lg); display:flex; align-items:center; gap:16px; }\n.vc-promo-text { flex:1; font-size:14px; color:var(--vc-ink-secondary); }\n.vc-promo-text strong { color:var(--vc-ink); }\n.vc-promo-link { padding:8px 20px; font-size:13px; font-weight:700; color:#fff; background:var(--vc-accent); border-radius:var(--vc-radius); text-decoration:none; white-space:nowrap; transition:background 0.15s; }\n.vc-promo-link:hover { background:var(--vc-accent-hover); }\n\n\/* \u2500\u2500 FOOTER \u2500\u2500 *\/\n.vc-footer { text-align:center; padding:32px 16px; font-size:13px; color:var(--vc-ink-muted); }\n.vc-footer a { color:var(--vc-accent); text-decoration:none; }\n.vc-footer a:hover { text-decoration:underline; }\n.vc-footer-links { margin-top:8px; font-size:12px; }\n.vc-footer-links a { margin:0 8px; }\n\n\/* \u2500\u2500 PRINT \u2500\u2500 *\/\n@media print {\n    .vc-section-body { max-height:none!important; }\n    .vc-faq-a { max-height:none!important; }\n    .vc-results { max-height:none!important; padding:24px!important; }\n    .vc-copy-btn, .vc-section-chevron, .vc-faq-chevron, .vc-presets, .vc-promo { display:none!important; }\n}\n<\/style>\n\n<div class=\"vc-calculator\" id=\"vc-fit-tolerance\">\n\n<!-- Header -->\n<header class=\"vc-header\">\n    <p class=\"vc-header-eyebrow\">Free Engineering Tool<\/p>\n    <h1 class=\"vc-header-title\">Shaft-Hole Fit Calculator<\/h1>\n    <p class=\"vc-header-subtitle\">Calculate tolerance limits and fit type for shaft-hole combinations per ISO 286. Select nominal dimension, hole tolerance, and shaft tolerance to get clearance or interference values.<\/p>\n    <div class=\"vc-badges\">\n        <span class=\"vc-badge\">ISO 286<\/span>\n        <span class=\"vc-badge\">IT5 \u2013 IT11<\/span>\n        <span class=\"vc-badge\">Hole-Basis System<\/span>\n    <\/div>\n<\/header>\n\n<!-- Calculator Card -->\n<div class=\"vc-card\">\n    <form class=\"vc-form\" id=\"vc-form\" autocomplete=\"off\">\n        <div class=\"vc-form-grid\">\n            <div class=\"vc-field\">\n                <label class=\"vc-label\" for=\"vc-dim\">Nominal Dimension <span class=\"vc-label-hint\">(mm range)<\/span><\/label>\n                <select class=\"vc-select\" id=\"vc-dim\">\n                    <option value=\"0\">1 \u2013 3 mm<\/option>\n                    <option value=\"1\">3 \u2013 6 mm<\/option>\n                    <option value=\"2\">6 \u2013 10 mm<\/option>\n                    <option value=\"3\">10 \u2013 18 mm<\/option>\n                    <option value=\"4\">18 \u2013 30 mm<\/option>\n                    <option value=\"5\" selected>30 \u2013 50 mm<\/option>\n                    <option value=\"6\">50 \u2013 80 mm<\/option>\n                    <option value=\"7\">80 \u2013 120 mm<\/option>\n                    <option value=\"8\">120 \u2013 180 mm<\/option>\n                    <option value=\"9\">180 \u2013 250 mm<\/option>\n                    <option value=\"10\">250 \u2013 315 mm<\/option>\n                    <option value=\"11\">315 \u2013 400 mm<\/option>\n                <\/select>\n            <\/div>\n            <div class=\"vc-field\">\n                <label class=\"vc-label\" for=\"vc-hole\">Hole Tolerance<\/label>\n                <select class=\"vc-select\" id=\"vc-hole\">\n                    <option value=\"H6\">H6 \u2014 Precision<\/option>\n                    <option value=\"H7\" selected>H7 \u2014 General<\/option>\n                    <option value=\"H8\">H8 \u2014 Semi-precision<\/option>\n                    <option value=\"H9\">H9 \u2014 Free running<\/option>\n                    <option value=\"H11\">H11 \u2014 Rough \/ clearance<\/option>\n                <\/select>\n            <\/div>\n            <div class=\"vc-field\">\n                <label class=\"vc-label\" for=\"vc-shaft\">Shaft Tolerance<\/label>\n                <select class=\"vc-select\" id=\"vc-shaft\">\n                    <option value=\"f6\">f6 \u2014 Free running<\/option>\n                    <option value=\"f7\">f7 \u2014 Free running<\/option>\n                    <option value=\"g6\">g6 \u2014 Close running<\/option>\n                    <option value=\"h5\">h5 \u2014 Precision sliding<\/option>\n                    <option value=\"h6\" selected>h6 \u2014 Sliding<\/option>\n                    <option value=\"h7\">h7 \u2014 Sliding (loose)<\/option>\n                    <option value=\"js6\">js6 \u2014 Location (snug)<\/option>\n                    <option value=\"k6\">k6 \u2014 Transition<\/option>\n                    <option value=\"m6\">m6 \u2014 Transition (tight)<\/option>\n                    <option value=\"n6\">n6 \u2014 Light press<\/option>\n                    <option value=\"p6\">p6 \u2014 Press fit<\/option>\n                    <option value=\"r6\">r6 \u2014 Medium press<\/option>\n                    <option value=\"s6\">s6 \u2014 Heavy press<\/option>\n                <\/select>\n            <\/div>\n        <\/div>\n\n        <!-- Presets -->\n        <div class=\"vc-presets\">\n            <div class=\"vc-presets-label\">Quick presets<\/div>\n            <button type=\"button\" class=\"vc-preset-btn\" data-dim=\"5\" data-hole=\"H7\" data-shaft=\"h6\">\u00d850 H7\/h6 (sliding)<\/button>\n            <button type=\"button\" class=\"vc-preset-btn\" data-dim=\"4\" data-hole=\"H7\" data-shaft=\"p6\">\u00d830 H7\/p6 (press)<\/button>\n            <button type=\"button\" class=\"vc-preset-btn\" data-dim=\"4\" data-hole=\"H7\" data-shaft=\"k6\">\u00d825 H7\/k6 (transition)<\/button>\n            <button type=\"button\" class=\"vc-preset-btn\" data-dim=\"6\" data-hole=\"H7\" data-shaft=\"g6\">\u00d865 H7\/g6 (running)<\/button>\n        <\/div>\n    <\/form>\n\n    <!-- Results -->\n    <div class=\"vc-results\" id=\"vc-results\">\n        <div class=\"vc-results-head\">\n            <h2 class=\"vc-results-title\">Results<\/h2>\n            <button type=\"button\" class=\"vc-copy-btn\" id=\"vc-copy-btn\">\n                <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><rect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\"\/><path d=\"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1\"\/><\/svg>\n                Copy\n            <\/button>\n        <\/div>\n        <div class=\"vc-result-grid\">\n            <div class=\"vc-rcard vc-rcard-primary\" id=\"vc-r-fitcard\">\n                <div class=\"vc-rcard-label\">Fit Type<\/div>\n                <div class=\"vc-rcard-value\" id=\"vc-r-fittype\">\u2014<\/div>\n            <\/div>\n            <div class=\"vc-rcard\">\n                <div class=\"vc-rcard-label\">Hole Max (ES)<\/div>\n                <div class=\"vc-rcard-value\" id=\"vc-r-hmax\">\u2014<\/div>\n            <\/div>\n            <div class=\"vc-rcard\">\n                <div class=\"vc-rcard-label\">Hole Min (EI)<\/div>\n                <div class=\"vc-rcard-value\" id=\"vc-r-hmin\">\u2014<\/div>\n            <\/div>\n            <div class=\"vc-rcard\">\n                <div class=\"vc-rcard-label\">Shaft Max (es)<\/div>\n                <div class=\"vc-rcard-value\" id=\"vc-r-smax\">\u2014<\/div>\n            <\/div>\n            <div class=\"vc-rcard\">\n                <div class=\"vc-rcard-label\">Shaft Min (ei)<\/div>\n                <div class=\"vc-rcard-value\" id=\"vc-r-smin\">\u2014<\/div>\n            <\/div>\n            <div class=\"vc-rcard\">\n                <div class=\"vc-rcard-label\">Max Clearance \/ Min Interference<\/div>\n                <div class=\"vc-rcard-value\" id=\"vc-r-maxcl\">\u2014<\/div>\n            <\/div>\n            <div class=\"vc-rcard\">\n                <div class=\"vc-rcard-label\">Min Clearance \/ Max Interference<\/div>\n                <div class=\"vc-rcard-value\" id=\"vc-r-mincl\">\u2014<\/div>\n            <\/div>\n        <\/div>\n\n        <!-- Tolerance Zone Diagram -->\n        <div class=\"vc-diagram-wrap\">\n            <div class=\"vc-diagram-title\">Tolerance Zone Diagram<\/div>\n            <svg id=\"vc-diagram\" width=\"100%\" height=\"220\" viewBox=\"0 0 600 220\"><\/svg>\n        <\/div>\n    <\/div>\n<\/div>\n\n<!-- Theory & Reference -->\n<div class=\"vc-section vc-open\" id=\"vc-sec-theory\">\n    <button type=\"button\" class=\"vc-section-toggle\" aria-expanded=\"true\">\n        <span class=\"vc-section-toggle-text\">\n            <span class=\"vc-section-icon\">\ud83d\udcd8<\/span>\n            <span class=\"vc-section-title\">Theory &amp; Formulas<\/span>\n        <\/span>\n        <svg class=\"vc-section-chevron\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M6 9l6 6 6-6\"\/><\/svg>\n    <\/button>\n    <div class=\"vc-section-body\">\n        <div class=\"vc-section-inner vc-theory\">\n            <h3>ISO 286 Tolerance System<\/h3>\n            <p>ISO 286 defines a system of limits and fits for mating parts. Each tolerance specification consists of:<\/p>\n            <ul>\n                <li><strong>Fundamental deviation<\/strong> \u2014 a letter (H, h, g, k, p, etc.) that sets the position of the tolerance zone relative to the nominal dimension<\/li>\n                <li><strong>IT grade<\/strong> \u2014 a number (5, 6, 7, etc.) that defines the width of the tolerance zone<\/li>\n            <\/ul>\n\n            <div class=\"vc-formula-box\">Hole: Lower limit = Nominal + EI, Upper limit = Nominal + ES<\/div>\n            <div class=\"vc-formula-box\">Shaft: Upper limit = Nominal + es, Lower limit = Nominal + ei<\/div>\n\n            <h3>Hole-Basis System<\/h3>\n            <p>In the hole-basis system (most common), the hole has a fundamental deviation of <strong>H<\/strong> (EI = 0), and the shaft letter is varied to achieve the desired fit. This simplifies manufacturing since the hole is harder to adjust.<\/p>\n\n            <div class=\"vc-info-box\">\n                <p><strong>H holes:<\/strong> The lower deviation EI = 0 for all H holes. The upper deviation ES = EI + IT = IT (the tolerance grade width). So a H7 hole with nominal \u00d850 has limits of 50.000 to 50.025 mm.<\/p>\n            <\/div>\n\n            <h3>Fit Classification<\/h3>\n            <table class=\"vc-table\">\n                <thead><tr><th>Fit Type<\/th><th>Condition<\/th><th>Typical Combinations<\/th><\/tr><\/thead>\n                <tbody>\n                    <tr><td><strong>Clearance<\/strong><\/td><td>Shaft always smaller than hole<\/td><td>H7\/f6, H7\/g6, H7\/h6<\/td><\/tr>\n                    <tr><td><strong>Transition<\/strong><\/td><td>May be clearance or interference<\/td><td>H7\/js6, H7\/k6, H7\/m6, H7\/n6<\/td><\/tr>\n                    <tr><td><strong>Interference<\/strong><\/td><td>Shaft always larger than hole<\/td><td>H7\/p6, H7\/r6, H7\/s6<\/td><\/tr>\n                <\/tbody>\n            <\/table>\n\n            <h3>Common Applications<\/h3>\n            <table class=\"vc-table\">\n                <thead><tr><th>Fit<\/th><th>Description<\/th><th>Application<\/th><\/tr><\/thead>\n                <tbody>\n                    <tr><td>H7\/f7<\/td><td>Free running<\/td><td>Bearings, long shafts, high-speed rotation<\/td><\/tr>\n                    <tr><td>H7\/g6<\/td><td>Close running<\/td><td>Precision bearings, slideways<\/td><\/tr>\n                    <tr><td>H7\/h6<\/td><td>Sliding<\/td><td>Pistons, spigots, locating fits<\/td><\/tr>\n                    <tr><td>H7\/k6<\/td><td>Transition<\/td><td>Keyed shafts, bearing inner rings<\/td><\/tr>\n                    <tr><td>H7\/n6<\/td><td>Light interference<\/td><td>Press fits for light loads<\/td><\/tr>\n                    <tr><td>H7\/p6<\/td><td>Press fit<\/td><td>Bearing bushings, permanent assembly<\/td><\/tr>\n                    <tr><td>H7\/s6<\/td><td>Heavy press<\/td><td>Permanent coupling, shrink fits<\/td><\/tr>\n                <\/tbody>\n            <\/table>\n\n            <h3>Practical Example<\/h3>\n            <div class=\"vc-example-box\">\n                <div class=\"vc-example-title\">Example \u2014 \u00d850 H7\/h6<\/div>\n                <p><strong>Nominal:<\/strong> 50 mm (range 30\u201350)<\/p>\n                <p><strong>Hole H7:<\/strong> EI = 0 \u03bcm, ES = +25 \u03bcm \u2192 50.000 to 50.025 mm<\/p>\n                <p><strong>Shaft h6:<\/strong> es = 0 \u03bcm, ei = \u221216 \u03bcm \u2192 49.984 to 50.000 mm<\/p>\n                <p><strong>Max clearance:<\/strong> 50.025 \u2212 49.984 = <strong>0.041 mm<\/strong><\/p>\n                <p><strong>Min clearance:<\/strong> 50.000 \u2212 50.000 = <strong>0.000 mm<\/strong><\/p>\n                <p><strong>Fit type:<\/strong> Clearance (sliding fit)<\/p>\n            <\/div>\n\n            <div class=\"vc-warning-box\">\n                <p style=\"margin:0;font-size:14px;color:var(--vc-ink-secondary);\"><strong>\u26a0\ufe0f Note:<\/strong> This calculator covers common tolerance combinations for the hole-basis system. For shaft-basis systems or less common tolerance designations, consult the full ISO 286 standard. Values are based on ISO 286-1:2010 tables.<\/p>\n            <\/div>\n        <\/div>\n    <\/div>\n<\/div>\n\n<!-- Related Calculators -->\n<div class=\"vc-section\" id=\"vc-sec-related\">\n    <button type=\"button\" class=\"vc-section-toggle\" aria-expanded=\"false\">\n        <span class=\"vc-section-toggle-text\">\n            <span class=\"vc-section-icon\">\ud83d\udd17<\/span>\n            <span class=\"vc-section-title\">Related Calculators<\/span>\n        <\/span>\n        <svg class=\"vc-section-chevron\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M6 9l6 6 6-6\"\/><\/svg>\n    <\/button>\n    <div class=\"vc-section-body\">\n        <div class=\"vc-section-inner\">\n            <div class=\"vc-related\">\n                <a class=\"vc-related-link\" href=\"\/calculators\/surface-roughness-converter\/\">Surface Roughness Converter<\/a>\n                <a class=\"vc-related-link\" href=\"\/calculators\/shaft-radial-runout\/\">Shaft Radial Runout<\/a>\n                <a class=\"vc-related-link\" href=\"\/calculators\/bearing-modified-life-l10a\/\">Bearing Life Calculator<\/a>\n                <a class=\"vc-related-link\" href=\"\/calculators\/thermal-expansion-calculator\/\">Thermal Expansion Calculator<\/a>\n            <\/div>\n        <\/div>\n    <\/div>\n<\/div>\n\n<!-- FAQ -->\n<div class=\"vc-section\" id=\"vc-sec-faq\">\n    <button type=\"button\" class=\"vc-section-toggle\" aria-expanded=\"false\">\n        <span class=\"vc-section-toggle-text\">\n            <span class=\"vc-section-icon\">\u2753<\/span>\n            <span class=\"vc-section-title\">Frequently Asked Questions<\/span>\n        <\/span>\n        <svg class=\"vc-section-chevron\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M6 9l6 6 6-6\"\/><\/svg>\n    <\/button>\n    <div class=\"vc-section-body\">\n        <div class=\"vc-section-inner\">\n            <div class=\"vc-faq-list\" id=\"vc-faq-list\"><\/div>\n        <\/div>\n    <\/div>\n<\/div>\n\n<!-- Promo -->\n<div class=\"vc-promo\">\n    <div class=\"vc-promo-text\">\n        <strong>Vibromera \u2014 Portable Balancing &amp; Vibration Analysis<\/strong><br>\n        Professional field balancing instruments and software. Precision measurement for shaft and rotor assemblies. Used in 50+ countries.\n    <\/div>\n    <a class=\"vc-promo-link\" href=\"https:\/\/vibromera.eu\/\" target=\"_blank\" rel=\"noopener\">Learn More<\/a>\n<\/div>\n\n<!-- Footer -->\n<footer class=\"vc-footer\">\n    <p>\u00a9 2024\u20132025 <a href=\"https:\/\/vibromera.eu\/\">Vibromera<\/a> \u2014 Engineering Calculators<\/p>\n    <p style=\"font-size:12px;margin-top:4px;\">Based on ISO 286-1:2010. Last updated: February 2025<\/p>\n    <div class=\"vc-footer-links\">\n        <a href=\"\/calculators\/engineering-calculators\/\">All 252 Calculators<\/a>\n        <a href=\"https:\/\/vibromera.eu\/contacts\/\">Contact<\/a>\n    <\/div>\n<\/footer>\n\n<\/div>\n\n<script>\n(function() {\n    'use strict';\n\n    var SLUG = 'fit-tolerance-iso286';\n\n    function $(id) { return document.getElementById(id); }\n    function fmt(n, d) { if(isNaN(n)) return '\u2014'; var f=n.toFixed(d===undefined?3:d); return f.replace(\/(\\.\\d*?)0+$\/,'$1').replace(\/\\.$\/,''); }\n\n    \/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n       ISO 286 DATA TABLES (values in micrometers)\n       \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n\n    \/\/ Dimension ranges: [min, max, geometric_mean_for_formulas]\n    var DIM_RANGES = [\n        { min:1, max:3, D:1.732 },\n        { min:3, max:6, D:4.243 },\n        { min:6, max:10, D:7.746 },\n        { min:10, max:18, D:13.416 },\n        { min:18, max:30, D:23.238 },\n        { min:30, max:50, D:38.730 },\n        { min:50, max:80, D:63.246 },\n        { min:80, max:120, D:97.980 },\n        { min:120, max:180, D:146.969 },\n        { min:180, max:250, D:212.132 },\n        { min:250, max:315, D:280.625 },\n        { min:315, max:400, D:355.000 }\n    ];\n\n    \/\/ IT grade values in micrometers, indexed by dimension range index\n    \/\/ Grades: IT5, IT6, IT7, IT8, IT9, IT11\n    var IT = {\n        5:  [4,  5,  6,  8,  9,  11, 13, 15, 18, 20, 23, 25],\n        6:  [6,  8,  9,  11, 13, 16, 19, 22, 25, 29, 32, 36],\n        7:  [10, 12, 15, 18, 21, 25, 30, 35, 40, 46, 52, 57],\n        8:  [14, 18, 22, 27, 33, 39, 46, 54, 63, 72, 81, 89],\n        9:  [25, 30, 36, 43, 52, 62, 74, 87, 100,115,130,140],\n        11: [60, 75, 90,110,130,160,190,220,250,290,320,360]\n    };\n\n    \/\/ Fundamental deviations for shafts (in micrometers)\n    \/\/ For f,g,h: value is the UPPER deviation (es), negative for f and g\n    \/\/ For k,m,n,p,r,s: value is the LOWER deviation (ei), positive\n    \/\/ For js: symmetrical \u00b1IT\/2\n    \/\/ For h: es = 0 always\n    var SHAFT_DEV = {\n        \/\/ Upper deviations (es) for f and g \u2014 NEGATIVE values\n        f: [-6, -10, -13, -16, -20, -25, -30, -36, -43, -50, -56, -62],\n        g: [-2, -4,  -5,  -6,  -7,  -9, -10, -12, -14, -15, -17, -18],\n        h: [0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0],\n        \/\/ Lower deviations (ei) for k,m,n,p,r,s \u2014 POSITIVE values\n        k: [0,   1,   1,   1,   2,   2,   2,   3,   3,   4,   4,   4],\n        m: [2,   4,   6,   7,   8,   9,  11,  13,  15,  17,  20,  21],\n        n: [4,   8,  10,  12,  15,  17,  20,  23,  27,  31,  34,  37],\n        p: [6,  12,  15,  18,  22,  26,  32,  37,  43,  50,  56,  62],\n        r: [10, 15,  19,  23,  28,  34,  41,  48,  55,  63,  73,  80],\n        s: [14, 19,  23,  28,  35,  43,  53,  59,  68,  79,  88,  98]\n    };\n\n    \/\/ Shaft deviation type: 'upper' means the value is es (compute ei = es - IT)\n    \/\/                        'lower' means the value is ei (compute es = ei + IT)\n    \/\/                        'sym' means js (\u00b1IT\/2)\n    var SHAFT_TYPE = {\n        f: 'upper', g: 'upper', h: 'upper',\n        js: 'sym',\n        k: 'lower', m: 'lower', n: 'lower', p: 'lower', r: 'lower', s: 'lower'\n    };\n\n    \/* \u2500\u2500 GET TOLERANCE VALUES \u2500\u2500 *\/\n    function getHoleLimits(dimIdx, holeStr) {\n        \/\/ Parse e.g. \"H7\" \u2192 letter H, grade 7\n        var grade = parseInt(holeStr.substring(1));\n        var itVal = IT[grade][dimIdx]; \/\/ tolerance width in \u03bcm\n        \/\/ H hole: EI = 0, ES = IT\n        return { EI: 0, ES: itVal, tol: itVal };\n    }\n\n    function getShaftLimits(dimIdx, shaftStr) {\n        \/\/ Parse e.g. \"h6\" \u2192 letter h, grade 6\n        var letter = shaftStr.replace(\/[0-9]\/g, '');\n        var grade = parseInt(shaftStr.replace(\/[^0-9]\/g, ''));\n        var itVal = IT[grade][dimIdx];\n\n        if (letter === 'js') {\n            \/\/ Symmetrical: es = +IT\/2, ei = -IT\/2\n            var half = itVal \/ 2;\n            return { es: Math.round(half * 10) \/ 10, ei: -Math.round(half * 10) \/ 10, tol: itVal };\n        }\n\n        var devType = SHAFT_TYPE[letter];\n        var devVal = SHAFT_DEV[letter][dimIdx];\n\n        if (devType === 'upper') {\n            \/\/ devVal is es (upper deviation)\n            var es = devVal;\n            var ei = es - itVal;\n            return { es: es, ei: ei, tol: itVal };\n        } else {\n            \/\/ devVal is ei (lower deviation)\n            var ei2 = devVal;\n            var es2 = ei2 + itVal;\n            return { es: es2, ei: ei2, tol: itVal };\n        }\n    }\n\n    \/* \u2500\u2500 CALCULATION \u2500\u2500 *\/\n    function calculate() {\n        var dimIdx = parseInt($('vc-dim').value);\n        var holeStr = $('vc-hole').value;\n        var shaftStr = $('vc-shaft').value;\n        var range = DIM_RANGES[dimIdx];\n        var nomMid = (range.min + range.max) \/ 2; \/\/ for display\n\n        var hole = getHoleLimits(dimIdx, holeStr);\n        var shaft = getShaftLimits(dimIdx, shaftStr);\n\n        \/\/ Convert \u03bcm to mm for display\n        var holeMax = hole.ES \/ 1000; \/\/ ES in mm\n        var holeMin = hole.EI \/ 1000; \/\/ EI in mm\n        var shaftMax = shaft.es \/ 1000; \/\/ es in mm\n        var shaftMin = shaft.ei \/ 1000; \/\/ ei in mm\n\n        \/\/ Clearance = hole dimension - shaft dimension\n        \/\/ Max clearance = Hole max - Shaft min\n        var maxClearance = holeMax - shaftMin; \/\/ mm\n        \/\/ Min clearance = Hole min - Shaft max\n        var minClearance = holeMin - shaftMax; \/\/ mm\n\n        \/\/ Fit type\n        var fitType, fitClass;\n        if (minClearance > 0) {\n            fitType = 'Clearance Fit';\n            fitClass = 'vc-fit-clearance';\n        } else if (maxClearance < 0) {\n            fitType = 'Interference Fit';\n            fitClass = 'vc-fit-interference';\n        } else {\n            fitType = 'Transition Fit';\n            fitClass = 'vc-fit-transition';\n        }\n\n        \/\/ Display\n        var dimLabel = '\u00d8' + range.min + '\u2013' + range.max + ' mm';\n        $('vc-r-fittype').innerHTML = fitType + ' <span class=\"vc-rcard-unit\">' + holeStr + '\/' + shaftStr + ' \u00b7 ' + dimLabel + '<\/span>';\n        var fitCard = $('vc-r-fitcard');\n        fitCard.className = 'vc-rcard vc-rcard-primary ' + fitClass;\n\n        \/\/ Show deviations relative to nominal\n        $('vc-r-hmax').innerHTML = signFmt(hole.ES) + ' <span class=\"vc-rcard-unit\">\u03bcm<\/span>';\n        $('vc-r-hmin').innerHTML = signFmt(hole.EI) + ' <span class=\"vc-rcard-unit\">\u03bcm<\/span>';\n        $('vc-r-smax').innerHTML = signFmt(shaft.es) + ' <span class=\"vc-rcard-unit\">\u03bcm<\/span>';\n        $('vc-r-smin').innerHTML = signFmt(shaft.ei) + ' <span class=\"vc-rcard-unit\">\u03bcm<\/span>';\n\n        \/\/ Clearance\/interference display\n        if (minClearance >= 0) {\n            $('vc-r-maxcl').innerHTML = fmt(maxClearance * 1000, 1) + ' <span class=\"vc-rcard-unit\">\u03bcm clearance<\/span>';\n            $('vc-r-mincl').innerHTML = fmt(minClearance * 1000, 1) + ' <span class=\"vc-rcard-unit\">\u03bcm clearance<\/span>';\n        } else if (maxClearance <= 0) {\n            $('vc-r-maxcl').innerHTML = fmt(Math.abs(maxClearance) * 1000, 1) + ' <span class=\"vc-rcard-unit\">\u03bcm interference (min)<\/span>';\n            $('vc-r-mincl').innerHTML = fmt(Math.abs(minClearance) * 1000, 1) + ' <span class=\"vc-rcard-unit\">\u03bcm interference (max)<\/span>';\n        } else {\n            $('vc-r-maxcl').innerHTML = fmt(maxClearance * 1000, 1) + ' <span class=\"vc-rcard-unit\">\u03bcm max clearance<\/span>';\n            $('vc-r-mincl').innerHTML = fmt(Math.abs(minClearance) * 1000, 1) + ' <span class=\"vc-rcard-unit\">\u03bcm max interference<\/span>';\n        }\n\n        $('vc-results').classList.add('vc-visible');\n\n        \/\/ Draw diagram\n        drawDiagram(hole, shaft, holeStr, shaftStr);\n\n        \/\/ URL params\n        var u = new URL(window.location);\n        u.searchParams.set('dim', dimIdx);\n        u.searchParams.set('hole', holeStr);\n        u.searchParams.set('shaft', shaftStr);\n        history.replaceState(null, '', u.toString());\n\n        \/\/ History\n        saveHistory({\n            dim: dimIdx, hole: holeStr, shaft: shaftStr,\n            _summary: dimLabel + ' ' + holeStr + '\/' + shaftStr + ' \u2192 ' + fitType\n        });\n    }\n\n    function signFmt(v) {\n        if (v === 0) return '0';\n        var s = v > 0 ? '+' : '';\n        \/\/ Handle fractional \u03bcm from js\n        if (v % 1 !== 0) return s + v.toFixed(1);\n        return s + v;\n    }\n\n    \/* \u2500\u2500 TOLERANCE ZONE DIAGRAM (SVG) \u2500\u2500 *\/\n    function drawDiagram(hole, shaft, holeStr, shaftStr) {\n        var svg = $('vc-diagram');\n        var W = 600, H = 220;\n        var midY = 110;\n        var zeroLine = midY;\n\n        \/\/ Find scale: display all deviations visible\n        var allVals = [hole.EI, hole.ES, shaft.ei, shaft.es];\n        var minV = Math.min.apply(null, allVals);\n        var maxV = Math.max.apply(null, allVals);\n        var range = Math.max(maxV - minV, 20);\n        var padding = range * 0.3;\n        var scaleMin = minV - padding;\n        var scaleMax = maxV + padding;\n        var scaleRange = scaleMax - scaleMin;\n\n        function yPos(um) {\n            \/\/ Invert Y: higher \u03bcm = higher position (lower Y)\n            return H - 30 - ((um - scaleMin) \/ scaleRange) * (H - 60);\n        }\n\n        var zY = yPos(0);\n\n        var html = '';\n\n        \/\/ Background\n        html += '<rect x=\"0\" y=\"0\" width=\"' + W + '\" height=\"' + H + '\" fill=\"' + 'var(--vc-surface)' + '\" rx=\"4\"\/>';\n\n        \/\/ Zero line (nominal dimension)\n        html += '<line x1=\"40\" y1=\"' + zY + '\" x2=\"560\" y2=\"' + zY + '\" stroke=\"#8a857e\" stroke-width=\"1\" stroke-dasharray=\"6,4\"\/>';\n        html += '<text x=\"30\" y=\"' + (zY + 4) + '\" text-anchor=\"end\" font-size=\"10\" font-family=\"var(--vc-mono)\" fill=\"#8a857e\">0<\/text>';\n\n        \/\/ Hole zone (left side)\n        var hMinY = yPos(hole.ES);\n        var hMaxY = yPos(hole.EI);\n        var hH = Math.abs(hMaxY - hMinY);\n        var hTop = Math.min(hMinY, hMaxY);\n        html += '<rect x=\"100\" y=\"' + hTop + '\" width=\"120\" height=\"' + Math.max(hH, 2) + '\" fill=\"rgba(42,92,140,0.15)\" stroke=\"#2a5c8c\" stroke-width=\"2\" rx=\"3\"\/>';\n        \/\/ Labels\n        html += '<text x=\"160\" y=\"' + (hTop - 6) + '\" text-anchor=\"middle\" font-size=\"11\" font-weight=\"600\" font-family=\"var(--vc-mono)\" fill=\"#2a5c8c\">Hole ' + holeStr + '<\/text>';\n        html += '<text x=\"230\" y=\"' + (yPos(hole.ES) + 4) + '\" font-size=\"10\" font-family=\"var(--vc-mono)\" fill=\"#2a5c8c\">' + signFmt(hole.ES) + ' \u03bcm<\/text>';\n        html += '<text x=\"230\" y=\"' + (yPos(hole.EI) + 4) + '\" font-size=\"10\" font-family=\"var(--vc-mono)\" fill=\"#2a5c8c\">' + signFmt(hole.EI) + ' \u03bcm<\/text>';\n        \/\/ Ticks\n        html += '<line x1=\"218\" y1=\"' + yPos(hole.ES) + '\" x2=\"226\" y2=\"' + yPos(hole.ES) + '\" stroke=\"#2a5c8c\" stroke-width=\"1.5\"\/>';\n        html += '<line x1=\"218\" y1=\"' + yPos(hole.EI) + '\" x2=\"226\" y2=\"' + yPos(hole.EI) + '\" stroke=\"#2a5c8c\" stroke-width=\"1.5\"\/>';\n\n        \/\/ Shaft zone (right side)\n        var sTopVal = Math.max(shaft.es, shaft.ei);\n        var sBotVal = Math.min(shaft.es, shaft.ei);\n        var sMinY = yPos(sTopVal);\n        var sMaxY = yPos(sBotVal);\n        var sH = Math.abs(sMaxY - sMinY);\n        var sTop = Math.min(sMinY, sMaxY);\n        html += '<rect x=\"370\" y=\"' + sTop + '\" width=\"120\" height=\"' + Math.max(sH, 2) + '\" fill=\"rgba(200,90,42,0.15)\" stroke=\"#c85a2a\" stroke-width=\"2\" rx=\"3\"\/>';\n        \/\/ Labels\n        html += '<text x=\"430\" y=\"' + (sTop - 6) + '\" text-anchor=\"middle\" font-size=\"11\" font-weight=\"600\" font-family=\"var(--vc-mono)\" fill=\"#c85a2a\">Shaft ' + shaftStr + '<\/text>';\n        html += '<text x=\"360\" y=\"' + (yPos(shaft.es) + 4) + '\" text-anchor=\"end\" font-size=\"10\" font-family=\"var(--vc-mono)\" fill=\"#c85a2a\">' + signFmt(shaft.es) + ' \u03bcm<\/text>';\n        html += '<text x=\"360\" y=\"' + (yPos(shaft.ei) + 4) + '\" text-anchor=\"end\" font-size=\"10\" font-family=\"var(--vc-mono)\" fill=\"#c85a2a\">' + signFmt(shaft.ei) + ' \u03bcm<\/text>';\n        \/\/ Ticks\n        html += '<line x1=\"364\" y1=\"' + yPos(shaft.es) + '\" x2=\"372\" y2=\"' + yPos(shaft.es) + '\" stroke=\"#c85a2a\" stroke-width=\"1.5\"\/>';\n        html += '<line x1=\"364\" y1=\"' + yPos(shaft.ei) + '\" x2=\"372\" y2=\"' + yPos(shaft.ei) + '\" stroke=\"#c85a2a\" stroke-width=\"1.5\"\/>';\n\n        \/\/ Nominal label\n        html += '<text x=\"300\" y=\"' + (zY + 16) + '\" text-anchor=\"middle\" font-size=\"10\" font-family=\"var(--vc-mono)\" fill=\"#8a857e\">Nominal dimension (0)<\/text>';\n\n        svg.innerHTML = html;\n    }\n\n    \/* \u2500\u2500 PRESETS \u2500\u2500 *\/\n    document.querySelectorAll('.vc-preset-btn').forEach(function(btn) {\n        btn.addEventListener('click', function(e) {\n            e.preventDefault();\n            $('vc-dim').value = this.getAttribute('data-dim');\n            $('vc-hole').value = this.getAttribute('data-hole');\n            $('vc-shaft').value = this.getAttribute('data-shaft');\n            calculate();\n        });\n    });\n\n    \/* \u2500\u2500 AUTO-CALCULATE \u2500\u2500 *\/\n    $('vc-form').addEventListener('change', calculate);\n\n    \/* \u2500\u2500 COPY \u2500\u2500 *\/\n    $('vc-copy-btn').addEventListener('click', function() {\n        var dimIdx = parseInt($('vc-dim').value);\n        var range = DIM_RANGES[dimIdx];\n        var text = 'ISO 286 Fit Calculation\\n' +\n            '\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\\n' +\n            'Dimension: \u00d8' + range.min + '\u2013' + range.max + ' mm\\n' +\n            'Fit: ' + $('vc-hole').value + '\/' + $('vc-shaft').value + '\\n' +\n            'Hole: ES = ' + $('vc-r-hmax').textContent + ', EI = ' + $('vc-r-hmin').textContent + '\\n' +\n            'Shaft: es = ' + $('vc-r-smax').textContent + ', ei = ' + $('vc-r-smin').textContent + '\\n' +\n            'Max Cl\/Int: ' + $('vc-r-maxcl').textContent + '\\n' +\n            'Min Cl\/Int: ' + $('vc-r-mincl').textContent + '\\n' +\n            'Fit Type: ' + $('vc-r-fittype').textContent + '\\n' +\n            '\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\\n' +\n            'vibromera.eu\/calculators\/fit-tolerance-iso286\/';\n\n        if (navigator.clipboard) {\n            navigator.clipboard.writeText(text).then(function() {\n                var btn = $('vc-copy-btn');\n                btn.classList.add('vc-copied');\n                btn.innerHTML = '<svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg> Copied!';\n                setTimeout(function() {\n                    btn.classList.remove('vc-copied');\n                    btn.innerHTML = '<svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><rect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\"\/><path d=\"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1\"\/><\/svg> Copy';\n                }, 2000);\n            });\n        }\n    });\n\n    \/* \u2500\u2500 COLLAPSIBLE SECTIONS \u2500\u2500 *\/\n    document.querySelectorAll('.vc-section-toggle').forEach(function(btn) {\n        btn.addEventListener('click', function() {\n            var section = this.closest('.vc-section');\n            var isOpen = section.classList.contains('vc-open');\n            section.classList.toggle('vc-open');\n            this.setAttribute('aria-expanded', !isOpen);\n        });\n    });\n\n    \/* \u2500\u2500 FAQ \u2500\u2500 *\/\n    var faqData = [\n        { q: 'What is H7\/h6?', a: '<p>H7\/h6 is one of the most common fit combinations in mechanical engineering. It describes a <strong>sliding fit<\/strong> (clearance fit) in the hole-basis system:<\/p><ul><li><strong>H7<\/strong> \u2014 hole with fundamental deviation H (lower limit = nominal, EI = 0) and IT grade 7<\/li><li><strong>h6<\/strong> \u2014 shaft with fundamental deviation h (upper limit = nominal, es = 0) and IT grade 6<\/li><\/ul><p>This combination always produces zero to positive clearance, making it ideal for locating fits, pistons, and spigots.<\/p>' },\n        { q: 'What is the difference between clearance and interference fit?', a: '<p>The three fit types are:<\/p><ul><li><strong>Clearance fit<\/strong> \u2014 the shaft is always smaller than the hole, leaving a gap. Assembly and disassembly are easy. Used for running and sliding fits.<\/li><li><strong>Interference fit<\/strong> \u2014 the shaft is always larger than the hole. Assembly requires pressing or heating. Creates a permanent joint relying on friction.<\/li><li><strong>Transition fit<\/strong> \u2014 may result in either slight clearance or slight interference, depending on actual manufactured dimensions within tolerance. Used for accurate location.<\/li><\/ul>' },\n        { q: 'How do I read ISO 286 notation?', a: '<p>ISO 286 notation uses <strong>letter + number<\/strong> format:<\/p><ul><li><strong>Uppercase<\/strong> letters (H, G, F...) = holes<\/li><li><strong>Lowercase<\/strong> letters (h, g, f...) = shafts<\/li><li>The <strong>letter<\/strong> defines the fundamental deviation (position of tolerance zone)<\/li><li>The <strong>number<\/strong> is the IT grade (tolerance zone width)<\/li><\/ul><p>Example: <strong>H7\/g6<\/strong> = hole with H deviation and IT7 tolerance, mated with shaft with g deviation and IT6 tolerance.<\/p><p>A fit is written as Hole\/Shaft, e.g. H7\/h6, H7\/p6.<\/p>' },\n        { q: 'What are common shaft-hole fit combinations?', a: '<p>Most common combinations in the hole-basis system (H hole):<\/p><ul><li><strong>H7\/f7<\/strong> \u2014 free running fit (bearings, long shafts)<\/li><li><strong>H7\/g6<\/strong> \u2014 close running fit (precision slideways)<\/li><li><strong>H7\/h6<\/strong> \u2014 sliding fit (pistons, spigots)<\/li><li><strong>H7\/k6<\/strong> \u2014 transition fit (keyed shafts)<\/li><li><strong>H7\/n6<\/strong> \u2014 tight transition (light press for location)<\/li><li><strong>H7\/p6<\/strong> \u2014 press fit (bearing bushings)<\/li><li><strong>H7\/s6<\/strong> \u2014 heavy press fit (permanent coupling)<\/li><\/ul>' },\n        { q: 'What is an IT grade?', a: '<p>IT (International Tolerance) grade defines the <strong>width<\/strong> of the tolerance zone. The standard grades are IT01 through IT18:<\/p><ul><li><strong>IT5<\/strong> \u2014 precision (gauges, fine instruments)<\/li><li><strong>IT6<\/strong> \u2014 high precision (precision fits)<\/li><li><strong>IT7<\/strong> \u2014 general engineering (most common for fits)<\/li><li><strong>IT8\u2013IT9<\/strong> \u2014 semi-precision (free-running fits)<\/li><li><strong>IT11<\/strong> \u2014 rough work (clearance fits, non-critical)<\/li><\/ul><p>Each step roughly multiplies the tolerance by 1.6\u00d7. The actual width depends on the nominal dimension: larger parts have wider tolerances for the same IT grade.<\/p>' }\n    ];\n\n    var faqList = $('vc-faq-list');\n    faqData.forEach(function(faq) {\n        faqList.innerHTML += '<div class=\"vc-faq-item\"><button type=\"button\" class=\"vc-faq-q\"><span>' + faq.q + '<\/span><svg class=\"vc-faq-chevron\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M6 9l6 6 6-6\"\/><\/svg><\/button><div class=\"vc-faq-a\"><div class=\"vc-faq-a-inner\">' + faq.a + '<\/div><\/div><\/div>';\n    });\n    faqList.addEventListener('click', function(e) {\n        var btn = e.target.closest('.vc-faq-q');\n        if (!btn) return;\n        btn.closest('.vc-faq-item').classList.toggle('vc-open');\n    });\n\n    \/* \u2500\u2500 HISTORY \u2500\u2500 *\/\n    function saveHistory(entry) {\n        var key = 'vc_history_' + SLUG;\n        var arr = [];\n        try { arr = JSON.parse(localStorage.getItem(key)) || []; } catch(e) {}\n        entry._ts = new Date().toISOString();\n        arr.unshift(entry);\n        if (arr.length > 10) arr = arr.slice(0, 10);\n        try { localStorage.setItem(key, JSON.stringify(arr)); } catch(e) {}\n    }\n\n    \/* \u2500\u2500 URL PARAMS \u2500\u2500 *\/\n    function loadParams() {\n        var p = new URLSearchParams(window.location.search);\n        if (p.has('dim')) $('vc-dim').value = p.get('dim');\n        if (p.has('hole')) $('vc-hole').value = p.get('hole');\n        if (p.has('shaft')) $('vc-shaft').value = p.get('shaft');\n    }\n\n    \/* \u2500\u2500 INIT \u2500\u2500 *\/\n    function init() {\n        loadParams();\n        calculate();\n    }\n\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', init);\n    } else {\n        init();\n    }\n})();\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>Gratis ISO 286-pasningskalkulator p\u00e5 nett. Beregn toleransegrenser, klaring eller interferens for aksel-hull-kombinasjoner. St\u00f8tter H6\u2013H11-hull og vanlige akseltoleranser f6\u2013s6.<\/p>","protected":false},"featured_media":0,"template":"","meta":{"ai_generated_summary":"","footnotes":""},"categories":[],"tags":[],"class_list":["post-100094","calculator","type-calculator","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/vibromera.eu\/nb\/wp-json\/wp\/v2\/calculator\/100094","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vibromera.eu\/nb\/wp-json\/wp\/v2\/calculator"}],"about":[{"href":"https:\/\/vibromera.eu\/nb\/wp-json\/wp\/v2\/types\/calculator"}],"version-history":[{"count":1,"href":"https:\/\/vibromera.eu\/nb\/wp-json\/wp\/v2\/calculator\/100094\/revisions"}],"predecessor-version":[{"id":100427,"href":"https:\/\/vibromera.eu\/nb\/wp-json\/wp\/v2\/calculator\/100094\/revisions\/100427"}],"wp:attachment":[{"href":"https:\/\/vibromera.eu\/nb\/wp-json\/wp\/v2\/media?parent=100094"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vibromera.eu\/nb\/wp-json\/wp\/v2\/categories?post=100094"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vibromera.eu\/nb\/wp-json\/wp\/v2\/tags?post=100094"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}