def getBlackbodyColorAndCoord(index, nSamples, minTemp, maxTemp, energyExp, energyOffset, energyMult): coordStep = 1.0 / (nSamples - 1) sampleStep = (maxTemp-minTemp) / (nSamples-1.0) iMaxEnergy = 1.0 / pow(maxTemp, energyExp) iEnergyOffset = 1.0 - energyOffset t = int(minTemp+sampleStep * index) e = (pow(t, energyExp) * iMaxEnergy * iEnergyOffset + energyOffset) * energyMult c = blackbody.blackbodyToRGB(t) return OpenMaya.MFloatVector(c[0]*e, c[1]*e, c[2]*e), coordStep
def getBlackbodyColorAndCoord(index, nSamples, minTemp, maxTemp, energyExp, energyOffset, energyMult): coordStep = 1.0 / (nSamples - 1) sampleStep = (maxTemp - minTemp) / (nSamples - 1.0) iMaxEnergy = 1.0 / pow(maxTemp, energyExp) iEnergyOffset = 1.0 - energyOffset t = int(minTemp + sampleStep * index) e = (pow(t, energyExp) * iMaxEnergy * iEnergyOffset + energyOffset) * energyMult c = blackbody.blackbodyToRGB(t) return OpenMaya.MFloatVector(c[0] * e, c[1] * e, c[2] * e), coordStep
def getBlackbodyColor(t): return blackbody.blackbodyToRGB(t)