Dulux Color numbers

Hi everyone, we are looking for a way to implement the Dulux specifier range in rhino, so that we can pick colors from a list and make materials based on those colors. The grasshopper part is easy, so we am reaching out for anyone who knows how to get a spreadsheet with dulux color names and also their corresponding rgb values. Once we have this we can make some custom definitions to create paint materials based on this.

As we are sometimes testing up to 50 paint colors in rhino, it would help to be able to automate the process.

thanks for any suggestions,


Quickly parsing this sanple XML file into Excel gives the associated RGB values, however they’re 5 digits long instead of the expected 3. Any idea what the extra ones are for? If this can be worked out it’d simply be a scraping mission to compile all the colours into a single doc.

Dulux SG5H1-Sweet Nymph.xml (2.4 KB)

1 Like

Hi, divide them by 257. Why? I don’t know… It could also be 256, truncated. This would make more sense, e.g. to get a higher precision for the rgb values as 0 to 255 (a range of 256) offers

1 Like

Dulux Australia publish the Colour Atlas which includes RGB values for each colour. Usefulness will depend on your scraping capability… https://www.dulux.com.au/specifier/colour/colour-atlas

They also have plugins for Revit and Archicad.


For the colour posted

From xml:
R: 49087
G: 52685
B: 51400

From website:

R: 191, G: 205, B: 200

No idea how the numbers relate.

One way would be the following:

Has zip files of jpegs.

Has an example on how to get an rgb value from a file. If you loop through the folder of jpeg images and get the rgb value of central pixel, you could write this data to a .csv file.

1 Like

I think I’ve managed to get a workflow working piggybacking off the Archicad colour group files. It’s just a matter of going through each colour group.

They are 16-bit RGB values: in 16 bit codes each colour component is represented by a value between 0 and 65535 (as compared to the better known 8-bit codes which range between 0 and 255).

So, taking @christopher.ho’s two values for R for example: 49087/65535 = 74.9% and 191/255 = 74.9%.


1 Like

Cheers @jeremy5, I’ll alter my conversion accordingly.

@arcade.smith I believe I may have compiled the spreadsheet

1 Like

Hi @djzelenko and everyone for the help and suggestions.

If there is a spreadsheet that would be really good, also if you have a method to compile it from the xml file that would be really good to know also - we had a look through the archicad xml files on the dulux page and i saw those color values but i found it difficult to scrape the data from it. It would be good to know the process as they do update colors etc.

thanks @jeremy5 also for providing that info regarding the 16-bit rgb values.

Once I have the color data we can make some grasshopper definitions to help others who want to do similar things.



-grasshopper has so many obscure uses!-

but if an byte range is from 0 to 255 its 256 numbers you can set, and as consequence dividing it by 256 is correct, as I wrote in my first answer

Actually dividing by 257, as you also wrote. 65535 ÷ 255 = 257.


1 Like

Found the solution:

*Needs lunchbox

Thanks everyone for the help, compiling it from the xml data was an easy task,


dulux color numbers from xml.gh (23.5 KB)