Here’s more detail:
The original bandlimited input waveform is in black.
The samples are the vertical black lines with * at their ends (at all integers for this example.)
To do a reconstruction you take each sample, scale a whole sin(x * pi)/(x * pi) curve by the sample’s value and add it to the output result at the sample’s time. (I’ll write sinc(x) instead of sin(x * pi) / ( x * pi) below, it’s a slight abuse of terminology, but it doesn’t change the results.)
The magenta, green and blue curves are the scaled sinc(x) at the samples at -1, 0 and 1.
I sum all of the sinc(x) curves scaled by all samples and plot that as red (which overlays the input black curve as one might expect.)
sinc(x) when evaluated at integers is everywhere 0 except at x = 0 where it’s 1. So when we scale it by a particular sample (say, the sample at 1 giving the blue curve) the only sample point that is affected is the sample at 1. For example you can see in the zoomed in plot that all of the sinc(x) curves are going thru 0 at the sample at 2.
The sin(x * pi)/(x * pi) function isn’t arbitrary, it’s what you need to use to filter the input at exactly 1/2 of the sample rate. If you want a different filter it will change the function.
For reference the cyan is what linear interpolation would give, note that it misses badly on the right.