Skip to content

Commit 08f5e21

Browse files
committed
square random masks for ngon and star
1 parent ae9fe77 commit 08f5e21

File tree

1 file changed

+14
-12
lines changed

1 file changed

+14
-12
lines changed

src/artist.jl

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -68,29 +68,31 @@ function randomscheme()
6868
end
6969
(colors...,)
7070
end
71-
function randommask(sz::Number=800; kargs...)
71+
function randomwh(sz::Number=800)
7272
s = sz * sz
7373
ratio = (9/16 + rand()*7/16)
7474
ratio = ratio > 0.9 ? 1.0 : ratio
7575
h = round(Int, sqrt(s * ratio))
7676
w = round(Int, h / ratio)
77-
randommask(w, h; kargs...)
78-
end
79-
function randommask(sz; kargs...)
80-
randommask(sz...; kargs...)
81-
end
82-
function randommask(w, h, args...; maskshape=:rand, kargs...)
77+
w, h
78+
end
79+
randomwh(sz::Tuple) = sz
80+
randomwh(arg...) = arg
81+
equalwh(sz::Number=800) = sz, sz
82+
equalwh(sz::Tuple) = sz
83+
equalwh(arg...) = arg
84+
function randommask(args...; maskshape=:rand, kargs...)
8385
ran = Dict(squircle => 0.4, box => 0.6, ellipse => 0.8, ngon => 0.9, star => 1, :rand => rand())[maskshape]
8486
if ran <= 0.4
85-
return randomsquircle(w, h, args...; kargs...)
87+
return randomsquircle(randomwh(args...)...; kargs...)
8688
elseif ran <= 0.6
87-
return randombox(w, h, args...; kargs...)
89+
return randombox(randomwh(args...)...; kargs...)
8890
elseif ran <= 0.8
89-
return randomellipse(w, h, args...; kargs...)
91+
return randomellipse(randomwh(args...)...; kargs...)
9092
elseif ran <= 0.9
91-
return randomngon(w, h, args...; kargs...)
93+
return randomngon(equalwh(args...)...; kargs...)
9294
else
93-
return randomstar(w, h, args...; kargs...)
95+
return randomstar(equalwh(args...)...; kargs...)
9496
end
9597
end
9698
function randombox(w, h; cornerradius=:rand, keeparea=false, kargs...)

0 commit comments

Comments
 (0)