Class: AsciidoctorDiagramLayout::Renderer::Scheme::MonochromaticScheme

Inherits:
Object
  • Object
show all
Defined in:
lib/asciidoctor_diagram_layout/renderer/scheme/monochromatic_scheme.rb

Constant Summary collapse

LIGHTNESS_MIN =
75
LIGHTNESS_MAX =
95
GRADIENT_SHIFT =
5
STROKE_LIGHTNESS =
60
STROKE_SATURATION =
20

Instance Method Summary collapse

Constructor Details

#initialize(hue, saturation) ⇒ MonochromaticScheme

Returns a new instance of MonochromaticScheme.



11
12
13
14
# File 'lib/asciidoctor_diagram_layout/renderer/scheme/monochromatic_scheme.rb', line 11

def initialize(hue, saturation)
  @hue        = hue
  @saturation = saturation
end

Instance Method Details

#fill_color(name) ⇒ Object



16
17
18
# File 'lib/asciidoctor_diagram_layout/renderer/scheme/monochromatic_scheme.rb', line 16

def fill_color(name)
  ColorPalette.hsl_to_hex(@hue, @saturation, lightness(name))
end

#gradient_end(name) ⇒ Object



20
21
22
23
# File 'lib/asciidoctor_diagram_layout/renderer/scheme/monochromatic_scheme.rb', line 20

def gradient_end(name)
  l = [lightness(name) + GRADIENT_SHIFT, 98].min
  ColorPalette.hsl_to_hex(@hue, @saturation, l)
end

#stroke_color(name) ⇒ Object



25
26
27
# File 'lib/asciidoctor_diagram_layout/renderer/scheme/monochromatic_scheme.rb', line 25

def stroke_color(name)
  ColorPalette.hsl_to_hex(@hue, STROKE_SATURATION, STROKE_LIGHTNESS)
end