I'm trying to obtain a waveform for a rolling cylinder on an irregular surface. The signature looks like the attached, or see this paper.
https://www.enactivenetwork.org/download.php?id=97
Rath gives a formula that uses a square root, which I want to avoid.
Several methods I've tried, based on samplehold and a parabolic shaper almost get there, but I can't quite crack this one.
It is the circular motion of the cylinder rotating around the last maxima and truncated by the intersection of the radius with the next minima.
I want to generate it from a samplehold noise (step waveform) source in real time, so no look ahead or tables (although delaying by some blocks is okay)
I've tried integrating and shaping the step wave, but it's not right :(
Now I can't see the wood for the trees and think I'm missing something really obvious.
Any geometry experts got an idea?
Preferably something only in the signal domain.
Cheers,
Andy
# Hi Andy, # I have an idea but I think it is more CPU hungry than calculating square roots, so it is useless :-) # There should be three tables. First one keeps the last N samples of the incoming signal (surface). It is like an oscilloscope which updates at every sample. Second one is a static N sample table. It includes the shape of the cylinder (bottom half part of the circle) where the radius R of the circle is equal or less than N/2. # At every sample you should let the cylinder fall from high above to the ground in the vertical direction. When the curve of the half circle meets the surface you get the vertical position of the cylinder! # But I can not find a good algorithm for this collision detection. You can take the difference of every point in cylinder table from the surface table. (Third table is this difference table) If a point have a value zero or something that point is the point of intersection. You now the initial height of the circle and how much you lowered it. The last position is the output of this filter. So simple :-) -ugur guney-
On Fri, Mar 7, 2008 at 10:23 AM, Andy Farnell padawan12@obiwannabe.co.uk wrote:
I'm trying to obtain a waveform for a rolling cylinder on an irregular surface. The signature looks like the attached, or see this paper.
https://www.enactivenetwork.org/download.php?id=97
Rath gives a formula that uses a square root, which I want to avoid.
Several methods I've tried, based on samplehold and a parabolic shaper almost get there, but I can't quite crack this one.
It is the circular motion of the cylinder rotating around the last maxima and truncated by the intersection of the radius with the next minima.
I want to generate it from a samplehold noise (step waveform) source in real time, so no look ahead or tables (although delaying by some blocks is okay)
I've tried integrating and shaping the step wave, but it's not right :(
Now I can't see the wood for the trees and think I'm missing something really obvious.
Any geometry experts got an idea?
Preferably something only in the signal domain.
Cheers,
Andy
-- Use the source
PD-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
i just did a simple load test on [sqrt~], which the documentation states is a 'fast, approximate algorithm'...
i made:
[sig~ 5] | [sqrt~]
and copied that dozens of times with only a small jump in cpu usage.
is it the cpu usage that's the problem? or something else?
Hallo, hard off hat gesagt: // hard off wrote:
i just did a simple load test on [sqrt~], which the documentation states is a 'fast, approximate algorithm'...
i made:
[sig~ 5] | [sqrt~]
and copied that dozens of times with only a small jump in cpu usage.
is it the cpu usage that's the problem? or something else?
Maybe you could also use q8_sqrt~ which is a faster, but not as accurate sqrt~.
Frank Barknecht _ ______footils.org__
Hi all,
at that time, Matthias Rath was working on the rolling model in Verona (Vision, Image Processing, and Sound lab, Computer Science Dept.) and was a member in the project Sounding Object (SOb, http://www.soundobject.org/ , there you can find the book collecting the most important results of the project). Unfortunately the software available on-line is not the very updated. However, the current CLOSED project (http://closed.ircam.fr/ ), in which I am a member, is carrying on the development of the everyday-sounds modules. You can find the latest version of the software package (available via svn) here: https://svn.sme-ccppd.org/svn/sobs/SoundDesignTools/tags/SDT-0.4.2c/ Unfortunately, since the coordinator of the project CLOSED is an "Ircamian", we were force to switch to Max/MSP, but at the same time we started developing using flext, so you can always compile the externals for pd. The example patches provided are for Max only, though. If you're interested, I can send you the latest pd version (pre-Max) of the rolling patch+externals.
Stefano
Thanks for these very useful pointers Stefano,
I did find the earlier Sounding Object toolkit and will try these through Flext.
Interesting work that I will follow!
Creaking / stick-slip models are also of interest, but I am trying to present these in vanilla Pd for teaching purposes.
good wishes,
Andy
On Mon, 10 Mar 2008 14:25:44 +0100 Stefano Papetti stefano.papetti@univr.it wrote:
Hi all,
at that time, Matthias Rath was working on the rolling model in Verona (Vision, Image Processing, and Sound lab, Computer Science Dept.) and was a member in the project Sounding Object (SOb, http://www.soundobject.org/ , there you can find the book collecting the most important results of the project). Unfortunately the software available on-line is not the very updated. However, the current CLOSED project (http://closed.ircam.fr/ ), in which I am a member, is carrying on the development of the everyday-sounds modules. You can find the latest version of the software package (available via svn) here: https://svn.sme-ccppd.org/svn/sobs/SoundDesignTools/tags/SDT-0.4.2c/ Unfortunately, since the coordinator of the project CLOSED is an "Ircamian", we were force to switch to Max/MSP, but at the same time we started developing using flext, so you can always compile the externals for pd. The example patches provided are for Max only, though. If you're interested, I can send you the latest pd version (pre-Max) of the rolling patch+externals.
Stefano