ColourSum - Printable Version +- LDraw.org Discussion Forums (https://forums.ldraw.org) +-- Forum: LDraw Programs (https://forums.ldraw.org/forum-7.html) +--- Forum: Parts Author Tools (https://forums.ldraw.org/forum-24.html) +--- Thread: ColourSum (/thread-15284.html) ColourSum - Max Martin Richter - 2015-01-25 I'm proud to present ColourSum - a tool for calculate the sum of two hex RGB colours with integrated comparison to LDraw standard colours. Just remove the .ldr extension ;-) /Max Re: ColourSum - Philippe Hurbain - 2015-01-26 Great! And as a by-product, it also gives the closest LDraw color of any RGB value (just enter it in both colors 1 and 2). What distance do you use? RGB one? Might be interesting to convert RGB color to HSL (see discussion here http://stackoverflow.com/questions/1678457/best-algorithm-for-matching-colours/1678498#1678498). What about showing color samples for both initial values? Re: ColourSum - Max Martin Richter - 2015-01-26 Yes, I'll try to add an option to pick a colour on the screen and find the nearest LDraw-Colour of it... Actually the program calculates all distances sqrt((r_1-r_2)^2+(g_1-g_2)^2+(b_1-b-2)^2) between the new calculated colour and the LDraw Colours, looks for the minimum of this distances and compare this minimum with the distance array to find the corresponding colour. I can try to implement an HSL in/output as well. Yes, the colour samples for the input values are on my todo list. But then I have to move the 'error check' (6 values, 0-f) must be done while the textbox changes its value or while leaving it. I'll think about. :-) /Max PS.: Please note, that my programming skills are a bit limited, so that I have to read several pages to get to the right path. :-) PPS.: I think I'll remove the sqrt. So I can calculate with integers and don't need to convert to double. The result should be the same. Re: ColourSum - Philippe Hurbain - 2015-01-26 A few interesting links sent by a friend: http://www.easyrgb.com/index.php?X=MATH including a converter http://www.easyrgb.com/index.php?X=CALC And http://en.wikipedia.org/wiki/Color_difference Good luck Re: ColourSum - Mario Pascucci - 2015-01-26 Just to add some complexity Take a look to the source of my quick&dirty mosaic app, BrickMosaic. In file "BrickColors.java" there are some references to XYZ and CIE-Lab colorspaces and CIE1994 method to measure "visual distance" between two color. I tried some algorithm and colorspaces, but CIE-Lab + CIE1994 giving best results. In source (file BrickColors.java): - conversion from RGB to CIE-Lab is in function "RGB2Lab" - color distance CIE1994 is computed in function "colorDiff_DE1994" - I used a Java library function to convert a color from RGB to XYZ colorspace, but in source there is a commented function (RGB2XYZ) that do the same. HTH Mario