From: Eugene Petkevich Date: Mon, 4 Sep 2023 09:45:55 +0000 (+0200) Subject: add splitter to SimpleNumber X-Git-Url: https://git.zuelum.org/?a=commitdiff_plain;h=e7f34b0b92e0b735ef084065aa6348f07b120a78;p=scprojects.git add splitter to SimpleNumber --- diff --git a/extensions/classes/splitters.sc b/extensions/classes/splitters.sc new file mode 100644 index 0000000..4ad7008 --- /dev/null +++ b/extensions/classes/splitters.sc @@ -0,0 +1,19 @@ ++ SimpleNumber { + split {|passes=1, weights=#[11, 10, 1]| + var arr = [this]; + var nweights = weights.normalizeSum; + passes.do{|i| + var newArr = []; + arr.do{|val| + var divider = Array.series(weights.size, 1).wchoose(nweights); + var newVal = val / divider; + divider.do{ + newArr = newArr.add(newVal); + }; + }; + arr = newArr; + }; + ^arr + } +} +