ftslicei

ftslicei — Copie un bout d'une ftable dans une autre pendant l'initialisation.

Description

Opcode du greffon emugens.

L'opcode ftslicei prend une ftable et en copie un bout dans une seconde ftable (comme tab2array, mais entre tables de fonction). Cette action a lieu durant l'initialisation. Pour une version au taux-k, voir ftslice

Syntaxr

ftslicei ifnsource, ifndest [, istart, iend, istep ]

Initialisation

ifnsource -- Le numéro de la table source.

ifndest -- Le numéro de la table destination.

istart -- La position à partir de laquelle copier. 0 par défaut.

iend -- La position à partir de laquelle la copie est stoppée. Elle n'est PAS inclusive. 0 indique de copier jusqu'à la fin de la table. Par défaut = la fin de la table.

istep -- Le nombre d'éléments à ignorer. 1 par défaut.

Exemples

Pour un exemple, se référer à l'opcode ftslice: ftslice.csd.

Exemple 391. Exemple de l'opcode ftslice.

<CsoundSynthesizer>
<CsOptions>
</CsOptions>
<CsInstruments>

; Example file ftslice

/*

ftslice: 

Copy slice from source table to destination table

Syntax:

ftslice ifnsource, ifndest, kstart=0, kend=0, kstep=1

ifnsource: source table
ifndest: destination table
kstart: the index to start copying from
kend: the end index to stop copying. This is NOT inclusive. 0=end of table
kstep: how many elements to skip

See also: tablecopy, tableicopy, tab2array
*/

instr 1
  ifn   ftgentmp 0, 0, -13, -2,  0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
  idest ftgentmp 0, 0, -11, -2,  0   ; empty table of size 11

  ; copy only even elements
  ftslice ifn, idest, 0, 0, 2
  ftprint idest

  ; copy too many elements - only the elements which fit in the dest table
  ; are copyed

  ftslice ifn, idest
  ftprint idest  

  turnoff
endin


</CsInstruments>
<CsScore>
i 1 0   0.1

</CsScore>
</CsoundSynthesizer>


Voir aussi

ftslice, ftset, slicearray, copyf2array, tab2array, tablecopy, tableicopy, ftprint

Crédits

Par : Eduardo Moguillansky 2018

Nouveau greffon dans la version 6.12