ToneDeltaPair constructor

ToneDeltaPair(
  1. DynamicColor roleA,
  2. DynamicColor roleB,
  3. double delta,
  4. TonePolarity polarity,
  5. bool stayTogether,
)

Documents a constraint in tone distance between two DynamicColors.

The polarity is an adjective that describes "A", compared to "B".

For instance, ToneDeltaPair(A, B, 15, 'darker', stayTogether) states that A's tone should be at least 15 darker than B's.

'nearer' and 'farther' describes closeness to the surface roles. For instance, ToneDeltaPair(A, B, 10, 'nearer', stayTogether) states that A should be 10 lighter than B in light mode, and 10 darker than B in dark mode.

roleA The first role in a pair. roleB The second role in a pair. delta Required difference between tones. Absolute value, negative values have undefined behavior. polarity The relative relation between tones of roleA and roleB, as described above. stayTogether Whether these two roles should stay on the same side of the "awkward zone" (T50-59). This is necessary for certain cases where one role has two backgrounds.

Implementation

ToneDeltaPair(
  this.roleA,
  this.roleB,
  this.delta,
  this.polarity,
  this.stayTogether,
);