getColorIndexRgb method

  1. @override
int getColorIndexRgb(
  1. int r,
  2. int g,
  3. int b
)

Implementation

@override
int getColorIndexRgb(int r, int g, int b) {
  _OctreeNode? root = _root;
  for (var bit = 1 << 7; bit != 0; bit >>= 1) {
    final i = ((g & bit) != 0 ? 1 : 0) * 4 +
        ((r & bit) != 0 ? 1 : 0) * 2 +
        ((b & bit) != 0 ? 1 : 0);
    if (root!.children[i] == null) {
      break;
    }
    root = root.children[i];
  }
  return root?.paletteIndex ?? 0;
}