The output is the result of drawing an ellipse with axes k_xradius and k_yradius centered at (k_xcenter, k_ycenter), and traversing it at frequency kpch.
Here is an example of the wterrain opcode. It uses the files wterrain.orc and wterrain.sco.
Example 1. Example of the wterrain opcode.
/* wterrain.orc */
; Initialize the global variables.
sr = 44100
kr = 4410
ksmps = 10
nchnls = 1
instr 1
kdclk linseg 0, 0.01, 1, p3-0.02, 1, 0.01, 0
kcx line 0.1, p3, 1.9
krx linseg 0.1, p3/2, 0.5, p3/2, 0.1
kpch line cpspch(p4), p3, p5 * cpspch(p4)
a1 wterrain 10000, kpch, kcx, kcx, -krx, krx, p6, p7
a1 dcblock a1
out a1*kdclk
endin
/* wterrain.orc */
/* wterrain.sco */
f1 0 8192 10 1 0 0.33 0 0.2 0 0.14 0 0.11
f2 0 4096 10 1
i1 0 4 7.00 1 1 1
i1 4 4 6.07 1 1 2
i1 8 8 6.00 1 2 2
e
/* wterrain.sco */