|PROFILE|::MULTI-INTERPOL
Arguments: prof n¡elm tab &optional note? [generic-function]
Interpolation dynamique entre les elements d'un profil de base.
Ce module permet l'interpolation entre les elements d'une liste qu'ils soient
des notes ou des accords.
Ce module permet l'interpolation entre les elements d'une liste qu'ils soient
des notes ou des accords.
<prof> est soit une liste simple, soit une liste de listes, de hauteurs en listents.
<n¡elm> est soit un nombre, soit une liste. Il est possible de choisir
le nombre de pas d'interpolation entre les elements de <prof>. Si <n¡elm> est un nombre, par exemple '3', nous allons ajouter trois pas d'interpolation entre chaque paire d'elements de <prof>. Dans ce cas <n¡elm> a une action globale. Mais il est aussi possible de rentrer dans <n¡elm> une liste qui definirait un nombre de pas d'interpolation differents pour chaque paire d'elements de <prof>, ce qui nous permet un contrle locale. Par exemple si <n¡elm> egal a (3 4 5) nous aurons trois elements interpoles entre la premiere paire de valeurs, quatre entre la deuxieme et cinq entre la troisieme. Si le nombre de points de <n¡elm> est plus petit que le nombre d'elements de <prof> moins un, la liste <n¡elm> sera lue circulairement. Dans l'exemple au-dessus si <prof> a plus de quatre elements, le module recommencera la lecture du debut de <n¡elm>, c'est-a-dire, entre la quatrieme paire d'elements de <prof> nous aurons trois elements, apres quatre, etc..
<tab> cette entree accepte un module bpf et realise l'interpolation
entre <begin> et <end> avec le profil dessine dans la bpf. Si aucun module <multi-bpf> est connecte l'interpolation sera lineaire. De la mme maniere que <n¡elm> il est possible de connecter soit un objet <multi-bpf>, soit une liste d'objets <multi-bpf>. Si <tab> est un objet <multi-bpf> l'interpolation entre toutes les [[paires]] de <prof> sera toujours avec la forme designee par <tab>. Dans ce cas <tab> a une action globale. Mais il est aussi possible de rentrer dans <tab> une liste qui definirait une direction d'interpolation differente pour chaque paire d'elements de <prof>, ce qui nous permet un contrle locale. Si le nombre d'elements de <tab>> est plus petit que le nombre d'elements de <prof> moins un, la liste <tab> sera lue circulairement.
<note?> entree optionnelle qui permet l'ajustement de la sequence generee
(exception faite a <begin> et <end>) a un (ou plusieurs) champs harmoniques. <note?> peut tre soit une liste simple ou soit une liste de listes. Si <note?> est une liste simple tous les objets seront ajustes en fonction des notes de cette liste. Si <note?> est une liste de listes a chaque objet genere sera fait correspondre une des sous listes. Si le nombre de sous listes est plus petit que la longueur de la liste des interpolations, la liste de listes <note?> sera lue circulairement.