Representing colors in RGB using Viviani's theorem

Instructions :

Drag the triangular point insdide the big equilateral triangle. A disc centered on this point is colored using RGB such that R+G+B=1. You can change the radius and the opacity of this disc. Below is a gradient using the same proportions of R, G, B. Namely, from left to right, (R,G,B) corresponds to the values for a given point, the colors of the squares are : R*k/Max(R,G,B) G*k/Max(R,G,B) B*k/Max(R,G,B) with k going from 0.1 to 1, with a step of 0.1.