In een eerdere blog is uitgelegd hoe je kleuren van een laag wat zachter of harder maakt. Maar recent werd de vraag gesteld, kun je ze ook omzetten naar grijstinten? Je kunt uiteraard een Plot Style gebruiken, maar die heeft betrekking op alle kleuren. Stel dat je alleen de vlakvullingen wilt aanpassen. Dat kan met Dynamo voor Civil 3D en uiteraard de Arkance Systems Node Library.
Formule
Er is een heuse formule om een RGB kleur om te zetten naar grijstinten.
The RGB values are converted to grayscale using the NTSC formula: 0.299 ∙ Red + 0.587 ∙ Green + 0.114 ∙ Blue. This formula closely represents the average person’s relative perception of the brightness of red, green, and blue light.
Dit houdt in dat je de RGB componenten vermenigvuldigt met een waarde en bij elkaar optelt. Dan heb je het grijscomponent die je gebruikt om een nieuwe RGB kleur te maken in de kleur grijs. Als alle drie componenten dezelfde waarde hebben, dan is dat een grijstint.
Dynamo
Je kunt alle lagen aanpassen maar misschien wil je liever alleen de vlakvullingen. Dan maak je eerst een lagenfilter aan.
Toevallig hebben al deze lagen een RGB kleur maar als ze een ACI kleur hadden, dan kun je alsnog de RGB kleur opvragen. Je hoeft hier dus geen rekening mee te houden.
Daarna pas je de formule toe op de RGB componenten:
Ook hier hoef je geen rekening te houden met het afronden, dat doet de node zelf. Je hebt nu een lijst met RGB kleuren en die pas je toe op de gefilterde lagen:
En dit is het resultaat:
Zoals je ziet is het vrij eenvoudig. Andersom, van grijs naar kleur, is helaas een stuk minder eenvoudig. Hoewel, je zou een poging kunnen doen door de formule om te draaien en toe te passen op de grijswaarden. Wie weet wat dat voor moois oplevert!
Wil je complexe of repetitieve taken automatiseren in Civil 3D? Dit boek helpt je alles te leren over de design automating tool Dynamo voor Civil 3D. Je wordt een professional in visueel programmeren, en binnenkort zijn al je saaie of complexe taken geautomatiseerd!
This book is only available in English.