Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- untangleShapePhase :: C a => Int -> a -> (a, a) -> (a, a)
- untangleShapePhaseAnalytic :: C a => Int -> a -> (a, a) -> (a, a)
- flattenShapePhase :: C a => Int -> a -> (a, T a) -> (Int, (a, a))
- flattenShapePhaseAnalytic :: C a => Int -> a -> (a, T a) -> (Int, (a, a))
- shapeLimits :: C t => Margin -> Margin -> Int -> t -> (t, t)
- interpolationOffset :: Margin -> Margin -> Int -> Int
- interpolationNumber :: Margin -> Margin -> Int -> Int
- type Coords t = (Int, (Int, (t, t)))
- type Skip t = (Int, (t, T t))
Documentation
untangleShapePhase :: C a => Int -> a -> (a, a) -> (a, a) Source #
Convert from the (shape,phase) parameter pair to the index within a wave (step) and the index of a wave (leap) in the sampled prototype tone.
For this routine it would be simpler,
if shape
would measure in multiples of period
(we would only need a Ring instance),
but for shapeLimit
it is better the way it is.
untangleShapePhaseAnalytic :: C a => Int -> a -> (a, a) -> (a, a) Source #