Hypertile is basically a poincare with pre-calculated offsets, and hypershift is a simplified poincare. So all three mathematically do the same thing.
Try this:
1. Make a vertical line. for example, square with post transformation x:0, y:2.
2. Add a chained hypershift to this line. With default shift value 0.1 you will get a curve like this: (
3. Add a chained hypertile2 to hypershift, and link it back to itself to get a hypertile pattern. Set p:4, q: 6 in parameters.
4. Try changing shift value on hypershift. You will see that the lines align at some values. For example, for p:4, q: 6 hypertile these values are ~0.318, ~0.577, ~0.757 and so on.
Hypertile (plain hypertile, not hypertile2) with p:4, q:6, n:0 will give you the same result as 0.577 hypershift.
So, these hypershift offsets are the coordinates at which hyperbolic tiles align. Knowing this you can tile anything without overlapping.
Here's an example:
Hyper. First example just tiles the squares using single hypershift. Second example uses hypershift > crop > hypershift trick to crop the triangle in a hyperbolic way.
There is a way to calculate the exact hypershift offset values, but I don't remember how it's done, and don't really want to investigate it now. You can try to calculate it yourself, or ask
Zueuk. He will know for sure.