rsc3/doc-schelp/HelpSource/Classes/LFPulse.scrbl

104 lines
1.4 KiB
Text
Raw Normal View History

2022-08-24 13:53:18 +00:00
#lang scribble/manual
@(require (for-label racket))
@title{LFPulse}
pulse oscillator@section{categories}
UGens>Generators>Deterministic
@section{related}
Classes/LFSaw
@section{description}
A non-band-limited pulse oscillator. Outputs a high value of one and a low value of zero.
@section{classmethods}
@section{method}
ar, kr
@section{argument}
freq
frequency in Hertz
@section{argument}
iphase
initial phase offset in cycles ( 0..1 )
@section{argument}
width
pulse width duty cycle from zero to one.
@section{argument}
mul
@section{argument}
add
@section{instancemethods}
@section{private}
signalRange
@section{examples}
a plot:
@racketblock[
{ LFPulse.ar(Line.kr(100, 800, 0.1)) }.plot(0.1);
::
50 Hz wave:
]
@racketblock[
{ LFPulse.ar(50) * 0.1 }.play;
::
modulating frequency:
]
@racketblock[
{ LFPulse.ar(XLine.kr(1, 200, 10), 0, 0.2, 0.1) }.play;
::
amplitude modulation:
]
@racketblock[
{ LFPulse.kr(XLine.kr(1, 200, 10), 0, 0.2) * SinOsc.ar(440) * 0.1 }.play;
::
used as both Oscillator and LFO:
]
@racketblock[
{ LFPulse.ar(LFPulse.kr(3, 0, 0.3, 200, 200), 0, 0.2, 0.1) }.play;
::
scope:
]
@racketblock[
{ LFPulse.ar(500, 0, MouseX.kr, 0.5) }.scope;
::
compare with band limited Pulse UGen:
]
@racketblock[
(
{
[
Pulse.ar(100, 0.3, 0.5),
LFPulse.ar(100, 0, 0.3, 0.5)
] * 0.2
}.scope(bufsize: 44100, zoom: 5)
)
::
]