> Source URL: /demos/tsp-demo/tsp.demo
[@wave-builder]: ./tsp.tags.md

## Weve builder

Each RGB channel is driven by one wave function:

$$
Y = A \cdot \sin(F \cdot (x - P)) + O
$$

Three ways to manipulate the program — type the equations directly, drag the sliders, or load a preset. All representations (code, plot, texture) stay synchronized.

<wave-builder />

Try editing the `program` panel directly. For example, change `red = 128 * sin(2 * (x - 0)) + 128` to `red = 200 * sin(6 * (x - 1.57)) + 128` and watch the plot and texture redraw. Prefix a line with `#` to mute that channel.


---

## Backlinks

The following sources link to this document:

- [Teaspoon Programming](/index.path.llm.md)
