soloam / node-red-contrib-colorspace

Nodered node to convert color
MIT License
2 stars 2 forks source link

Add hue xy space #7

Open Aaroneisele55 opened 1 year ago

Aaroneisele55 commented 1 year ago

Hello, I wanted to use your node to sync between an rgb led (which needs rgb values) and hue lights (which give either hsv, xy+bri or mired). I noticed that the x,y,bri space, like hue uses it, isn't supported atm Can you please add that? Here is some information on how you could do it: https://stackoverflow.com/questions/22894498/philips-hue-convert-xy-from-api-to-hex-or-rgb Thanks

gschintgen commented 1 year ago

Hi, I've also just stumbled over this issue: I have a GU10 spot that supports RGB but only via x/y values. I had to look up on Wikipedia what it's all about. It seems rather straightforward given that XYZ is already implemented: https://en.wikipedia.org/wiki/CIE_1931_color_space#CIE_xy_chromaticity_diagram_and_the_CIE_xyY_color_space (z is redundant, hence only x and y are used.)

I'll humbly suggest to re-open the issue and leave it open. Who knows, maybe someone comes around with a pull request?

Aaroneisele55 commented 1 year ago

Hi, I've also just stumbled over this issue: I have a GU10 spot that supports RGB but only via x/y values. I had to look up on Wikipedia what it's all about. It seems rather straightforward given that XYZ is already implemented: https://en.wikipedia.org/wiki/CIE_1931_color_space#CIE_xy_chromaticity_diagram_and_the_CIE_xyY_color_space (z is redundant, hence only x and y are used.)

I'll humbly suggest to re-open the issue and leave it open. Who knows, maybe someone comes around with a pull request?

Ok, I have reopened it. I hope this will be implemented...

AlecTBM commented 10 months ago

I also need xy values, but after a quick look in the code I did not want to start messing around with it. However, since it is quite easy to convert it, I have found putting this change node after this node can work pretty good: [{"id":"08ca882f7de9bc7e","type":"change","z":"8d0401e6ae22c56b","name":"","rules":[{"t":"set","p":"payload.xy","pt":"msg","to":"{\t \"x\": payload.xyz.x/(payload.xyz.x+payload.xyz.y+payload.xyz.z),\t \"y\": payload.xyz.y/(payload.xyz.x+payload.xyz.y+payload.xyz.z)\t}","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":830,"y":1840,"wires":[[]]}]

Hope this help @gschintgen

soloam commented 10 months ago

I need to manage my work to get time to modify this node! I've been having some requests to improve and fix code, but been lacking time to address them!

Thank you all that been finding work around to bugs and features!