int mapTest[][5] = {
/*// expand. for now we assume 0 is not significant
{0, 0, 100, 0, 1023},
{1, 0, 100, 0, 1023},
{99, 0, 100, 0, 1023},
{100, 0, 100, 0, 1023},
// expand + flip. same benefit
{0, 100, 0, 0, 1023},
{1, 100, 0, 0, 1023},
{99, 100, 0, 0, 1023},
{100, 100, 0, 0, 1023},
*/
// shrink
{0, 0, 900, 0, 60},
{1, 0, 900, 0, 60},
{7, 0, 900, 0, 60},
{16, 0, 900, 0, 60},
{884, 0, 900, 0, 60},
{893, 0, 900, 0, 60},
{899, 0, 900, 0, 60},
{900, 0, 900, 0, 60},
//
{0, 0, 900, 0, 61},
{1, 0, 900, 0, 61},
{7, 0, 900, 0, 61},
{16, 0, 900, 0, 61},
{884, 0, 900, 0, 61},
{893, 0, 900, 0, 61},
{899, 0, 900, 0, 61},
{900, 0, 900, 0, 61},
/*
{101, 100, 300, 0, 100},
{102, 100, 300, 0, 100},
{103, 100, 300, 0, 100},
{297, 100, 300, 0, 100},
{298, 100, 300, 0, 100},
{299, 100, 300, 0, 100},
{300, 100, 300, 0, 100},
// shrink + flip
{100, 100, 300, 100, 0},
{101, 100, 300, 100, 0},
{102, 100, 300, 100, 0},
{103, 100, 300, 100, 0},
{297, 100, 300, 100, 0},
{298, 100, 300, 100, 0},
{299, 100, 300, 100, 0},
{300, 100, 300, 100, 0},
*/
};
const int wtf = sizeof mapTest / sizeof mapTest[0];
void setup()
{
Serial.begin(115200); Serial.println("first things first\n");
for (int ii = 0; ii < wtf; ii++) {
Serial.print("map(");
Serial.print(mapTest[ii][0]); Serial.print(", ");
Serial.print(mapTest[ii][1]); Serial.print(", ");
Serial.print(mapTest[ii][2]); Serial.print(", ");
Serial.print(mapTest[ii][3]); Serial.print(", ");
Serial.print(mapTest[ii][4]); Serial.print(") == ");
long int x = map(mapTest[ii][0], mapTest[ii][1], mapTest[ii][2], mapTest[ii][3], mapTest[ii][4]);
Serial.println(x);
}
for (; ; );
}
void loop() {}
power lines invisible!