Class: GeoPattern::PatternGenerator
- Inherits:
-
Object
- Object
- GeoPattern::PatternGenerator
- Defined in:
- lib/geo_pattern/pattern_generator.rb
Instance Method Summary collapse
- #generate ⇒ Object
-
#initialize(string, generator: nil, patterns: nil, base_color: nil, color: nil) ⇒ PatternGenerator
constructor
A new instance of PatternGenerator.
Constructor Details
#initialize(string, generator: nil, patterns: nil, base_color: nil, color: nil) ⇒ PatternGenerator
Returns a new instance of PatternGenerator.
11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/geo_pattern/pattern_generator.rb', line 11 def initialize(string, generator: nil, patterns: nil, base_color: nil, color: nil) warn "Using generator key is deprecated as of 1.3.1" if generator requested_patterns = (Array(generator) | Array(patterns)).flatten.compact pattern_preset = PatternPreset.new( fill_color_dark: "#222", fill_color_light: "#ddd", stroke_color: "#000", stroke_opacity: 0.02, opacity_min: 0.02, opacity_max: 0.15 ) color_preset = ColorPreset.new( base_color: "#933c3c" ) color_preset.color = color if color color_preset.base_color = base_color if base_color seed = Seed.new(string) pattern_validator = PatternValidator.new pattern_validator.validate(requested_patterns) pattern_sieve = PatternSieve.new(requested_patterns, seed) @background_generator = BackgroundGenerators::SolidGenerator.new(seed, color_preset) @structure_generator = begin generator_klass = pattern_sieve.fetch generator_klass.new(seed, pattern_preset) end end |