Use mathematical mod in slowcat, fixes #85
This commit is contained in:
parent
3742bf384c
commit
903c065e26
1 changed files with 2 additions and 2 deletions
|
|
@ -3,7 +3,7 @@ import Fraction from './fraction.mjs';
|
||||||
import Hap from './hap.mjs';
|
import Hap from './hap.mjs';
|
||||||
import State from './state.mjs';
|
import State from './state.mjs';
|
||||||
|
|
||||||
import { isNote, toMidi, compose, removeUndefineds, flatten, id, listRange, curry } from './util.mjs';
|
import { isNote, toMidi, compose, removeUndefineds, flatten, id, listRange, curry, mod } from './util.mjs';
|
||||||
|
|
||||||
export class Pattern {
|
export class Pattern {
|
||||||
// the following functions will get patternFactories as nested functions:
|
// the following functions will get patternFactories as nested functions:
|
||||||
|
|
@ -828,7 +828,7 @@ export function slowcat(...pats) {
|
||||||
pats = pats.map(reify);
|
pats = pats.map(reify);
|
||||||
const query = function (state) {
|
const query = function (state) {
|
||||||
const span = state.span;
|
const span = state.span;
|
||||||
const pat_n = Math.floor(span.begin) % pats.length;
|
const pat_n = mod(span.begin.sam(), pats.length);
|
||||||
const pat = pats[pat_n];
|
const pat = pats[pat_n];
|
||||||
if (!pat) {
|
if (!pat) {
|
||||||
// pat_n can be negative, if the span is in the past..
|
// pat_n can be negative, if the span is in the past..
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue