View image pixel by pixel
This example uses Jitter to reveal text pixel by pixel. The text is written into the jit.lcd and then revealed by increasing x value of the source and destination end positions sent out of the jit.matrix.
This example uses Jitter to reveal text pixel by pixel. The text is written into the jit.lcd and then revealed by increasing x value of the source and destination end positions sent out of the jit.matrix.
Techniques called upsampling and downsampling can be used to get a “mosaic-like effect.” This effect is achieved by reducing the resolution – via changing the frames-per-second and pixel size – as shown in the example.
This patch shows how to use a mask in the alpha channel to impose a non-rectangular image on top of another image. For this patch to work, you will need to download the mask file called "mask.png" (which was made using the patch in "Make an elliptical mask in Jitter").
How does one import multiple movie captures into a single matrix resembling a print from a photo booth? The trick is to use the dstdimstart and dstdimend attributes of jit.matrix. See Jitter Tutorial 14 – Matrix Positioning.
If you have a 3 plane matrix and a 4 plane matrix, and would like to combine these to create a 7 plane matrix, you would first unpack a multiple matrix into multiple single matrices using the jit.unpack object, and then combine again with the jit.pack object.
This example shows how you can rotate the output of a jit.gradient object. jit.gradient makes a 1-D matrix. You can "stretch" that into a 2-D matrix with jit.matrix and then rotate it with a jit.rota object.
This example shows how to sync data between 2 jit.cellblocks, while being able to have different views/scrolling of the same data, by using either jit.matrix or a coll to store the data.
Storage of large quantities of numerical data is exactly what Jitter is for. You might commonly think of the data in Jitter matrices as representing pixels of a video image, but in fact you can use the jit.matrix object to store any large sets of (multi-dimensional arrays of) numbers, which can be used for any purpose.
This example uses a 4-plane, 256×256 matrix for easy visualization, but it could be adapted to a 6-plane 1×1024 matrix.
To set matrix “B” to have the contents of matrix “A”, you simply send “A” to “B”. (More specifically, you cause matrix “A” to send a jit_matrix message to matrix “B”.) The trick, though, is to suppress thruput on matrix “B” by setting its @thru attribute to 0 (it’s 1 by default), so that you can set and recall its contents independently.