in src/h3lib/lib/coordijk.c [216:245]
void _ijkNormalize(CoordIJK* c) {
// remove any negative values
if (c->i < 0) {
c->j -= c->i;
c->k -= c->i;
c->i = 0;
}
if (c->j < 0) {
c->i -= c->j;
c->k -= c->j;
c->j = 0;
}
if (c->k < 0) {
c->i -= c->k;
c->j -= c->k;
c->k = 0;
}
// remove the min value if needed
int min = c->i;
if (c->j < min) min = c->j;
if (c->k < min) min = c->k;
if (min > 0) {
c->i -= min;
c->j -= min;
c->k -= min;
}
}