EvaluationContext.Colour.Hex.Saturation
Extracts the saturation component from a hex color
Syntax
EvaluationContext.Colour.Hex.Saturation(hexColor)
Parameters
Parameter | Type | Required | Description |
---|---|---|---|
hexColor | STRING | Yes | The hex color to evaluate (e.g., “■ #01B8AA”) |
Returns
(DOUBLE) Saturation value (0-1)
Example
EvaluationContext.Colour.Hex.Saturation("#5E81AC") // Returns 0.32
Definition
EvaluationContext.Colour.Hex.Saturation =
(
hexColor: STRING
) =>
VAR CleanHex = IF( LEFT( hexColor , 1) = "#", MID( hexColor, 2, 6), MID( hexColor, 1, 6 ) )
VAR R = EvaluationContext.Colour.Hex.ToInt( MID( CleanHex, 1, 2 ) )
VAR G = EvaluationContext.Colour.Hex.ToInt( MID( CleanHex, 3, 2 ) )
VAR B = EvaluationContext.Colour.Hex.ToInt( MID( CleanHex, 5, 2 ) )
VAR Mx = MAX( MAX( R, G ), B)
VAR Mn = MIN( MIN( R, G ), B)
VAR Delta = Mx - Mn
VAR L = ( Mx + Mn ) / 2
VAR S =
SWITCH(
true,
Delta = 0, 0,
L <= 127.5, Delta / (Mx + Mn),
L > 127.5, Delta / (510 - Mx - Mn)
)
RETURN S