0

フィリップスの色相電球は、3 つの異なる色モデル (ミレッドの温度、色相/彩度、および cie1931) をサポートしています。

cie1931 は電球が使用する「ネイティブ」モデルであるため、ほとんどの場合、それが電球によって報告されるモデルです。

私の素朴な考えは d3.lab(1, cie1931.x, cie1931.y).rgb() を使用することでしたが、これは正しくありません (すべての色が黒に非常に近くなります)。

カラーモデルの第一人者は、 cie1931[x,y] を d3 でサポートされているモデルの 1 つにマッピングする方向に私を向けることができますか?

ありがとう!

4

2 に答える 2

0

The Philips Hue SDK for iOS has an Application Note which explains how to convert the XY values to RGB. Maybe you can adopt this to your needs.

于 2013-04-24T08:55:48.110 に答える
-1
d3.cie1931 = {
// https://gist.github.com/AaronH/30c50aa4b161f8169c3d

  rgb : function(x, y) {
    var r, g, b, z;

    z = 1 - (x + y);

/*
   |R|   | X |   | 3.2333         -1.5262         0.2791 |
   |G| = | Y | * |-0.8268          2.4667         0.3323 |
   |B|   | Z |   | 0.1294          0.1983         2.0280 |
 */
    r =      (x *  3.2333) + (y * -1.5262) + (z * 0.2791);
    g =      (x * -0.8268) + (y *  2.4667) + (z * 0.3323);
    b =      (x *  0.1294) + (y *  0.1983) + (z * 2.0280);
    return d3.rgb (Math.max(0, Math.min(255, r * 255)),
                   Math.max(0, Math.min(255, g * 255)),
                   Math.max(0, Math.min(255, b * 255)));
  }
};
于 2013-04-17T02:56:00.137 に答える