moment-of-symmetry
Version:
Moment of Symmetry (MOS) musical scale generation and analysis for Javascript
33 lines (32 loc) • 1.24 kB
TypeScript
import { BaseOptions, MosPattern, MosScale } from '../types';
/**
* Calculate the number of periods in a MOS pattern
*/
export declare function calculatePeriods(largeSteps: number, smallSteps: number): number;
/**
* Calculate the period size of a MOS pattern
*/
export declare function calculatePeriodSize(largeSteps: number, smallSteps: number): number;
/**
* Get the number of bright generators to go down based on options
*/
export declare function getDown(options: BaseOptions, period: number, numPeriods: number): number;
/**
* Generate a MOS pattern string
*/
export declare function generatePattern(largeSteps: number, smallSteps: number, options?: BaseOptions): string;
/**
* Generate a MOS scale from a pattern
*/
export declare function generateScale(pattern: string, sizeOfLargeStep: number, sizeOfSmallStep: number): number[];
/**
* Create a complete MOS pattern object
*/
export declare function createMosPattern(largeSteps: number, smallSteps: number, options?: BaseOptions): MosPattern;
/**
* Create a complete MOS scale object
*/
export declare function createMosScale(largeSteps: number, smallSteps: number, options?: BaseOptions & {
sizeOfLargeStep?: number;
sizeOfSmallStep?: number;
}): MosScale;