import javax.vecmath.Color3f; /** * A colormap similar to Jet in Matlab. */ public class Jet implements ColorMap { public Jet() {} public void getColor(float x, Color3f result) { float a; // alpha if(x < 0.f) result.set(0.f,0.f,0.f); else if (x < 0.125f) { a = x/0.125f; result.set(0.f, 0.f, 0.5f+0.5f*a); } else if (x < 0.375f) { a = (x - 0.125f)/0.25f; result.set(0.f, a, 1.f); } else if (x < 0.625f) { a = (x - 0.375f)/0.25f; result.set(a, 1.f, 1.f-a); } else if (x < 0.875f) { a = (x - 0.625f)/0.25f; result.set(1.f, 1.f-a, 0.f); } else if (x <= 1.0f) { a = (x - 0.875f)/0.125f; result.set(1.f-0.5f*a, 0.f, 0.f); } else { result.set(1.f,1.f,1.f); } } }