Delete events whithout altering start times (leaving hole)?
Rick Taube
taube@ux1.cso.uiuc.edu
Mon, 3 Nov 1997 21:20:55 -0600
> [...] For me, this is the single worst
> aspect of CM/Stella (using relative instead of absolute time). Other than
> that, it's great :-)
im not sure i understand -- you can use absolute times:
(thread foo ()
(dotimes (i 5)
(object midi-note START i note (between 30 90))))
Stella [Top-Level]: tlist foo 0
Foo
0.00 1. #<MIDI-NOTE | 86|------|------| 64| 0|>
1.00 2. #<MIDI-NOTE | 52|------|------| 64| 0|>
2.00 3. #<MIDI-NOTE | 42|------|------| 64| 0|>
3.00 4. #<MIDI-NOTE | 33|------|------| 64| 0|>
4.00 5. #<MIDI-NOTE | 52|------|------| 64| 0|>
Stella [Top-Level]: del 1[4] expunge t
Stella [Top-Level]: tlist foo 0
Foo
0.00 1. #<MIDI-NOTE | 86|------|------| 64| 0|>
1.00 2. #<MIDI-NOTE | 52|------|------| 64| 0|>
2.00 3. #<MIDI-NOTE | 42|------|------| 64| 0|>
4.00 4. #<MIDI-NOTE | 52|------|------| 64| 0|>
Stella [Top-Level]:
---
if you already have relative rhythms and want to make them absolute, run
the object so the time values are set, then logior the +absolute+ bit:
run bar 0
del bar[...] expunge t
map bar set status (logior $status +absolute+)