void AddLookupRange(int baseStart, int baseEnd, int shapeStart, int saddleIndex, bool reverse, int offset)
{
if (reverse)
{
// high > low
lookupTable[offset] = MakeLookup(baseStart, false, false);
lookupTable[offset + 1] = MakeLookup(shapeStart + 2, true, true);
lookupTable[offset + 2] = MakeLookup(shapeStart + 2, false, false);
lookupTable[offset + 3] = MakeLookup(shapeStart + 1, true, true);
lookupTable[offset + 4] = MakeLookup(shapeStart + 2, false, true);
lookupTable[offset + 5] = MakeLookup(shapeStart + 1, false, true);
lookupTable[offset + 6] = MakeLookup(saddleIndex, true, false); //d
lookupTable[offset + 7] = MakeLookup(shapeStart, true, true);
lookupTable[offset + 8] = MakeLookup(shapeStart + 2, true, false);
lookupTable[offset + 9] = MakeLookup(saddleIndex, false, false); //d
lookupTable[offset + 10] = MakeLookup(shapeStart + 1, false, false);
lookupTable[offset + 11] = MakeLookup(shapeStart, false, false);
lookupTable[offset + 12] = MakeLookup(shapeStart + 1, true, false);
lookupTable[offset + 13] = MakeLookup(shapeStart, false, true);
lookupTable[offset + 14] = MakeLookup(shapeStart, true, false);
lookupTable[offset + 15] = MakeLookup(baseEnd, false, false);
}
else
{
// low > high
lookupTable[offset] = MakeLookup(baseStart, false, false);
lookupTable[offset + 1] = MakeLookup(shapeStart, true, false);
lookupTable[offset + 2] = MakeLookup(shapeStart, false, true);
lookupTable[offset + 3] = MakeLookup(shapeStart + 1, true, false);
lookupTable[offset + 4] = MakeLookup(shapeStart, false, false);
lookupTable[offset + 5] = MakeLookup(shapeStart + 1, false, false);
lookupTable[offset + 6] = MakeLookup(saddleIndex, false, false); //d
lookupTable[offset + 7] = MakeLookup(shapeStart + 2, true, false);
lookupTable[offset + 8] = MakeLookup(shapeStart, true, true);
lookupTable[offset + 9] = MakeLookup(saddleIndex, true, false); //d
lookupTable[offset + 10] = MakeLookup(shapeStart + 1, false, true);
lookupTable[offset + 11] = MakeLookup(shapeStart + 2, false, true);
lookupTable[offset + 12] = MakeLookup(shapeStart + 1, true, true);
lookupTable[offset + 13] = MakeLookup(shapeStart + 2, false, false);
lookupTable[offset + 14] = MakeLookup(shapeStart + 2, true, true);
lookupTable[offset + 15] = MakeLookup(baseEnd, false, false);
}
}