Spécialiste des façades, de l'humidité et des toits
Pour bricoleurs & entrepreneurs
Gratis verzending vanaf €500*
Demander un devis
0
0
  • Incl.Excl.
    TVA
  • Spécialiste des façades, de l'humidité et des toits
    Pour bricoleurs & entrepreneurs
    Gratis verzending vanaf €500*

    NCS - RAL kleurenkaart

    L'interprétation d'une couleur est différente pour chacun, par exemple, mon idée de l'azur n'est probablement pas la même que la vôtre. Heureusement, il existe des systèmes de couleurs standard, comme le NCS (Natural Colour System) et le RAL (Reichs Aussc

    Déterminer la couleur NCS ou la couleur RAL

    L'interprétation d'une couleur est différente pour chacun, par exemple, mon idée de l'azur n'est probablement pas la même que la vôtre. Heureusement, il existe des systèmes de couleurs standard, comme le NCS (Natural Colour System) et le RAL (Reichs Ausschuss für Lieferbedingungen). Il s'agit de descriptions normalisées des couleurs, qui sont les mêmes pour tous. Nous pouvons colorer nos peintures dans la palette de couleurs NCS et RAL. D'autres couleurs peuvent être disponibles sur demande.

    Couleurs NCS

    NCS décrit la couleur de chaque matériau, avec des codes de couleur numériques, appelés notations NCS. Le NCS a défini 1950 couleurs, et elles sont notées avec trois valeurs : 1) la quantité de noir (intensité) - 2) la "coloration" (chromaticité) - 3) un pourcentage entre deux des quatre couleurs élémentaires : rouge (R) - bleu (B) - vert (G) - jaune (Y)

    Un exemple : S 2565-R80B. Ce code décrit une couleur qui fait partie de la collection standard (S) et se situe entre les couleurs rouge (R) et bleu (B) avec :
    1) 25% de noir perçu - 2) 65% de couleur perçue - 3) 80% de bleu perçu (les 20% restants sont rouges)

    Il est impossible de représenter ici toutes les couleurs des 1950 NCS. Il est préférable d'utiliser un nuancier NCS.

    Couleurs RAL

    RAL Classic est une collection de 213 couleurs. Les couleurs RAL Classic ont un numéro à 4 chiffres combiné aux lettres "RAL" (par exemple, RAL 1028). Le premier chiffre est un numéro de code (1 : jaune, 2 : orange, 3 : rouge, 4 : violet, 5 : bleu, 6 : vert, 7 : gris, 8 : brun et 9 : nuances de blanc et de noir). Les 3 numéros restants sont choisis de manière séquentielle. Le nom d'une nuance de couleur (par exemple, "jaune melon" pour le RAL 1028) est un indice supplémentaire.

    Veuillez noter que la reproduction des couleurs sur un écran d'ordinateur est toujours différente de la réalité. (source : www.ralkleuren.com)

    Cliquez sur une nuance de couleur pour afficher les couleurs RAL en plus grand:

    Couleurs Jaune

    Couleurs Oranges

    Couleurs Rouge

    Couleurs Violet

    Couleurs Bleu

    Couleurs Vert

    Couleurs Gris

    Couleurs Brun

    Couleurs Blanc/Noir


    Comme nos produits de peinture sont précolorés, et donc "personnalisés", le droit de renonciation prévu dans nos conditions générales ne leur est pas applicable.

    NCS - RAL kleurenkaart

    Déterminer la couleur NCS ou la couleur RAL

    L'interprétation d'une couleur est différente pour chacun, par exemple, mon idée de l'azur n'est probablement pas la même que la vôtre. Heureusement, il existe des systèmes de couleurs standard, comme le NCS (Natural Colour System) et le RAL (Reichs Ausschuss für Lieferbedingungen). Il s'agit de descriptions normalisées des couleurs, qui sont les mêmes pour tous. Nous pouvons colorer nos peintures dans la palette de couleurs NCS et RAL. D'autres couleurs peuvent être disponibles sur demande.

    Couleurs NCS

    NCS décrit la couleur de chaque matériau, avec des codes de couleur numériques, appelés notations NCS. Le NCS a défini 1950 couleurs, et elles sont notées avec trois valeurs : 1) la quantité de noir (intensité) - 2) la "coloration" (chromaticité) - 3) un pourcentage entre deux des quatre couleurs élémentaires : rouge (R) - bleu (B) - vert (G) - jaune (Y)

    Un exemple : S 2565-R80B. Ce code décrit une couleur qui fait partie de la collection standard (S) et se situe entre les couleurs rouge (R) et bleu (B) avec :
    1) 25% de noir perçu - 2) 65% de couleur perçue - 3) 80% de bleu perçu (les 20% restants sont rouges)

    Il est impossible de représenter ici toutes les couleurs des 1950 NCS. Il est préférable d'utiliser un nuancier NCS.

    Couleurs RAL

    RAL Classic est une collection de 213 couleurs. Les couleurs RAL Classic ont un numéro à 4 chiffres combiné aux lettres "RAL" (par exemple, RAL 1028). Le premier chiffre est un numéro de code (1 : jaune, 2 : orange, 3 : rouge, 4 : violet, 5 : bleu, 6 : vert, 7 : gris, 8 : brun et 9 : nuances de blanc et de noir). Les 3 numéros restants sont choisis de manière séquentielle. Le nom d'une nuance de couleur (par exemple, "jaune melon" pour le RAL 1028) est un indice supplémentaire.

    Veuillez noter que la reproduction des couleurs sur un écran d'ordinateur est toujours différente de la réalité. (source : www.ralkleuren.com)

    Cliquez sur une nuance de couleur pour afficher les couleurs RAL en plus grand:

    Couleurs Jaune

    Couleurs Oranges

    Couleurs Rouge

    Couleurs Violet

    Couleurs Bleu

    Couleurs Vert

    Couleurs Gris

    Couleurs Brun

    Couleurs Blanc/Noir


    Comme nos produits de peinture sont précolorés, et donc "personnalisés", le droit de renonciation prévu dans nos conditions générales ne leur est pas applicable.

    NCS - RAL kleurenkaart
    /* Do it Pro – Universele Rekenhulp (simplified) */ /* 0) Token -> marker shim (zorgt dat [[calc-enable: …]] omgezet wordt naar een onzichtbare ) */ (function(){ function parsePairs(s){ const out = {}; (s||"").split(";").forEach(pair=>{ const p = pair.trim(); if(!p) return; const m = p.match(/^([a-z0-9_-]+)\s*=\s*"(.*)"$|^([a-z0-9_-]+)\s*=\s*([^"]+)$/i); if(!m) return; const k = (m[1]||m[3]||"").trim(); const v = (m[2]||m[4]||"").trim(); if(k) out[k] = v; }); return out; } function tokenToMarker(root){ try{ const walker = document.createTreeWalker(root||document.body, NodeFilter.SHOW_TEXT, null, false); const nodes = []; while (walker.nextNode()) { const t = walker.currentNode.nodeValue; if (t && /\[\[\s*calc-enable\s*:\s*.+\]\]/i.test(t)) nodes.push(walker.currentNode); } nodes.forEach(node=>{ const txt = node.nodeValue; const m = txt.match(/\[\[\s*calc-enable\s*:\s*(.+?)\s*\]\]/i); if (!m) return; const cfg = parsePairs(m[1]); const span = document.createElement("span"); span.className = "calc-enable"; span.style.display = "none"; Object.keys(cfg).forEach(k=>{ const camel = k.replace(/-([a-z])/g, (_,c)=>c.toUpperCase()); span.dataset[camel] = cfg[k]; }); node.parentNode.insertBefore(span, node); node.nodeValue = txt.replace(m[0], ""); // token weghalen uit zichtbare tekst }); }catch(e){} } function bootShim(){ tokenToMarker(document.body); const obs = new MutationObserver(()=>tokenToMarker(document.body)); obs.observe(document.body, {childList:true, subtree:true}); } if (document.readyState==='loading') document.addEventListener('DOMContentLoaded', bootShim); else bootShim(); })(); /* 1) Styles */ (function(){ if (document.getElementById("calc-global-styles")) return; const style = document.createElement("style"); style.id = "calc-global-styles"; style.textContent = ` .calc-card { background:#EFEFEF; border:1px solid #e0e0e0; border-radius:10px; padding:12px; margin:0 0 10px; max-width:560px; font-family:inherit; } .calc-title { margin:0 0 6px; font-size:15px; font-weight:700; line-height:1.2; } .calc-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; } .calc-field { display:flex; flex-direction:column; gap:3px; } .calc-label { font-size:13px; color:#222; line-height:1.1; margin:0; } .calc-label::after { content: ":"; margin-left:3px; } .calc-input, .calc-select { padding:8px 10px; border:1px solid #d2d2d2; border-radius:8px; font:inherit; height:36px; width:100%; box-sizing:border-box; background:#fff; line-height:1.2; } .calc-input:focus, .calc-select:focus { border-color:#4FB1DE; box-shadow:0 0 0 2px rgba(79,177,222,0.15); outline:none; } .calc-btn { margin-top:8px; padding:10px 12px; border:0; border-radius:8px; cursor:pointer; font-weight:700; width:100%; color:#fff; background:#4FB1DE; transition:filter .15s ease; height:40px; } .calc-btn:hover { filter:brightness(0.97); } .calc-result { margin-top:8px; } .calc-resgrid { display:grid; grid-template-columns: repeat(2, minmax(180px, 1fr)); gap:8px; } .calc-pill { background:#fff; border:1px solid #dcdcdc; border-radius:8px; padding:8px 10px; display:flex; align-items:center; justify-content:space-between; font-size:13px; font-weight:600; } .calc-pill span, .calc-pill b { line-height:1; display:inline-block; } .calc-pill b { color:#d35400; margin-left:8px; } .calc-note { margin-top:6px; font-size:11px; color:#666; line-height:1.2; } @media (max-width:560px){ .calc-grid { grid-template-columns:1fr; } .calc-resgrid { grid-template-columns:1fr; } } `; document.head.appendChild(style); })(); /* 2) Calculator */ (function(){ const HOST_SELECTORS = ".product__buy, .product-actions, #product-actions, .product__purchase, .buy-block, .product-info__buy, form[action*='cart']"; const OPTIONS_ANCHOR_SELECTORS = [ ".product__options", ".product-variants", ".product-form__options", ".product__choices", ".product-configurator", ".product-custom-fields", "[data-product-options]", "[id*='product-options']" ]; const toNumber = (v) => { if (typeof v !== "string") v = (v||0).toString(); v = v.trim().replace(/\s/g,'').replace(',', '.'); const n = parseFloat(v); return isNaN(n) ? 0 : n; }; const pctFactor = (pct) => 1 + ((parseInt(pct||"0",10)||0)/100); const detectLang = (forced)=>{ if (forced === "nl" || forced === "fr") return forced; const htmlLang = (document.documentElement.lang || "").toLowerCase(); const href = location.href.toLowerCase(); if (htmlLang.startsWith("fr") || /\/fr(\/|[-_])/.test(href) || /[-_.]fr\./.test(href)) return "fr"; return "nl"; }; const STR = (L)=>({ nl:{ t:{strips:"Rekenhulp: steenstrips",boards:"Rekenhulp: stuks per m²",coverage:"Rekenhulp: verbruik",range:"Rekenhulp: verbruik (min–max)"}, f:{m2:"Oppervlakte (m²)", lm:"Buitenhoeken (lm)", placing:"Plaatsing", with:"Met voeg", without:(f)=>`Zonder voeg (${f>=1?"+":"−"}${Math.round(Math.abs((f-1)*100))}%)`, waste:"Reserve"}, b:"Bereken", o:{flat:"Vlakke stenen", corner:"Hoekstenen", boxes:"dozen", noteStrips:(a,c,f,aj,jm)=> aj?(jm==="normal"?`* Vlak: ${a} m²/doos • Hoek: ${c} lm/doos • Zonder voeg = +${Math.round((f-1)*100)}%`:`* Vlak: ${a} m²/doos • Hoek: ${c} lm/doos • Met voeg = −${Math.round((1-f)*100)}%`):`* Vlak: ${a} m²/doos • Hoek: ${c} lm/doos • Plaatsing zonder voeg`} }, fr:{ t:{strips:"Calculateur : parement",boards:"Calculateur : pièces par m²",coverage:"Calculateur : consommation",range:"Calculateur : consommation (min–max)"}, f:{m2:"Surface (m²)", lm:"Angles extérieurs (ml)", placing:"Pose", with:"Avec joint", without:(f)=>`Sans joint (${f>=1?"+":"−"}${Math.round(Math.abs((f-1)*100))}%)`, waste:"Réserve"}, b:"Calculer", o:{flat:"Pierres plates", corner:"Pierres d’angle", boxes:"boîtes", noteStrips:(a,c,f,aj,jm)=> aj?(jm==="normal"?`* Face : ${a} m²/boîte • Angle : ${c} ml/boîte • Sans joint = +${Math.round((f-1)*100)}%`:`* Face : ${a} m²/boîte • Angle : ${c} ml/boîte • Avec joint = −${Math.round((1-f)*100)}%`):`* Face : ${a} m²/boîte • Angle : ${c} ml/boîte • Pose sans joint`} } })[L]; function buildStrips(marker, host){ const ds = marker.dataset; const LANG = detectLang((ds.lang||"").toLowerCase()); const T = STR(LANG); const areaPerBox = parseFloat(ds.areaPerBox||0.5); const cornerPerBox = parseFloat(ds.cornerPerBox||1); const allowJoint = (ds.allowJoint||"true").toLowerCase() !== "false"; const noJointFactor= parseFloat(ds.nojointFactor||1.2); const jointMode = (ds.jointMode||"normal").toLowerCase(); const reserveOpts = (ds.reserve||"0,5,10,15,20").split(",").map(s=>s.trim()).filter(Boolean); let optionsAnchor = null; for (const sel of OPTIONS_ANCHOR_SELECTORS) { const el = host.querySelector(sel); if (el) { optionsAnchor = el; break; } } const placing = allowJoint ? (jointMode==="normal" ? `` : ``) : `
    ${T.f.without(noJointFactor)}
    `; const waste = ``; const html = `

    ${T.t.strips}

    ${placing}
    ${waste}
    ${T.o.noteStrips(areaPerBox, cornerPerBox, noJointFactor, allowJoint, jointMode)}
    `; const wrap = document.createElement("div"); wrap.innerHTML = html; const card = wrap.firstElementChild; if (optionsAnchor && optionsAnchor.parentNode) optionsAnchor.parentNode.insertBefore(card, optionsAnchor); else host.insertBefore(card, host.firstChild); function setResults(pills){ const grid = document.getElementById("calc-resgrid"); grid.style.display = "grid"; grid.innerHTML = pills.map(p=>`
    ${p.label}${p.value}
    `).join(""); } function calc(){ const m2 = toNumber(document.getElementById("calc-m2").value); const lm = toNumber(document.getElementById("calc-lm").value); const reservePct = parseInt(document.getElementById("calc-reserve").value||"0",10); const rF = pctFactor(reservePct); let f = 1; if (allowJoint) f = parseFloat(document.getElementById("calc-place").value)||1; else f = parseFloat(document.getElementById("calc-place").getAttribute("data-fixed"))||1; const boxesFlat = Math.ceil(((m2 * f) / areaPerBox) * rF); const boxesCorner = lm>0 ? Math.ceil(((lm * f) / cornerPerBox) * rF) : 0; const out = [{label:T.o.flat, value:`${boxesFlat} ${T.o.boxes}`}]; if (lm>0) out.push({label:T.o.corner, value:`${boxesCorner} ${T.o.boxes}`}); setResults(out); } document.getElementById("calc-btn").addEventListener("click", calc); } function init(){ const host = document.querySelector(HOST_SELECTORS); const marker = document.querySelector(".calc-enable"); if (!host || !marker) return; const type = (marker.dataset.calcType||"").toLowerCase(); if (type === "strips") buildStrips(marker, host); // (Andere types kun je later inschakelen—dit houdt het nu simpel en stabiel) } function boot(){ init(); const obs = new MutationObserver(()=>init()); obs.observe(document.body, {childList:true, subtree:true}); } if (document.readyState==='loading') document.addEventListener('DOMContentLoaded', boot); else boot(); })();