Sound Design Toolkit 075 Physically informed sound synthesis for everyday sounds

- Main Page
- Modules
- Data Structures
- Files

Typedefs | Functions
Crumpling
SDTControl.h: Compound solid interactions

## Typedefs
typedef struct SDTCrumpling | SDTCrumpling
| Opaque data structure for the crumpling object.

## Functions
SDTCrumpling * | SDTCrumpling_new ()
| Object constructor. More...
void | SDTCrumpling_free (SDTCrumpling *x)
| Object destructor. More...
void | SDTCrumpling_setCrushingEnergy (SDTCrumpling *x, double f)
| Sets the crushing energy. More...
void | SDTCrumpling_setGranularity (SDTCrumpling *x, double f)
| Sets the event density of the crumpling process. More...
void | SDTCrumpling_setFragmentation (SDTCrumpling *x, double f)
| Sets the amount of fragmentation of the object during the process. More...
void | SDTCrumpling_dsp (SDTCrumpling *x, double *outs)
| Single iteration of a crumpling process. Call this routine in a loop to simulate a crumpling process. Unlike in the breaking algorithm, iterations do not cause energy loss and the process can continue indefinitely until explicitly interrupted. More...

## Detailed Description

Control layer for the impact model, generating crumpling sonic textures. Two main outputs are exposed: energy and size. The former should be used to control the impact velocity, the latter should be used to control the size of the resonators.

## Function Documentation

void SDTCrumpling_dsp | ( | SDTCrumpling * | x,
|  | double * | outs
| ) |  |

Single iteration of a crumpling process. Call this routine in a loop to simulate a crumpling process. Unlike in the breaking algorithm, iterations do not cause energy loss and the process can continue indefinitely until explicitly interrupted.

Parameters

  [out] | outs | Pointer to the output array: impact energy and fragment size

void SDTCrumpling_free | ( | SDTCrumpling * | x | ) |

Object destructor.

Parameters

  [in] | x | Pointer to the instance to destroy

SDTCrumpling* SDTCrumpling_new | ( |  | ) |

Object constructor.

Returns
  Pointer to the new instance

void SDTCrumpling_setCrushingEnergy | ( | SDTCrumpling * | x,
|  | double | f
| ) |  |

Sets the crushing energy.

Parameters

  [in] | f | Average energy of the micro impacts, compared to the global energy of the process [0, 1]

void SDTCrumpling_setFragmentation | ( | SDTCrumpling * | x,
|  | double | f
| ) |  |

Sets the amount of fragmentation of the object during the process.

Parameters

  [in] | f | Object fragmentation [0, 1]

void SDTCrumpling_setGranularity | ( | SDTCrumpling * | x,
|  | double | f
| ) |  |

Sets the event density of the crumpling process.

Parameters

  [in] | f | Event density [0, 1]