Пример #1
0
uint8_t NEO_GetPixelColor(NEO_PixelIdxT column, NEO_PixelIdxT row, uint32_t *rgb) {
  uint8_t res, r,g,b;

  res = NEO_GetPixelRGB(column, row, &r, &g, &b);
  *rgb = (r<<16)|(g<<8)|b;
  return res;
}
Пример #2
0
uint8_t NEO_GetPixelColor(NEO_PixelIdxT pixelNo, uint32_t *rgb) {
  uint8_t res, r,g,b;

  res = NEO_GetPixelRGB(pixelNo, &r, &g, &b);
  *rgb = (r<<16)|(g<<8)|b;
  return res;
}
Пример #3
0
/* binary XOR the color of an individual pixel */
uint8_t NEO_XorPixelRGB(NEO_PixelIdxT x, NEO_PixelIdxT y, uint8_t red, uint8_t green, uint8_t blue) {
  uint8_t r, g, b;

  if (x>=NEO_NOF_X || y>=NEO_NOF_Y) {
    return ERR_RANGE; /* error, out of range */
  }
  NEO_GetPixelRGB(x, y, &r, &g, &b);
  r ^= red;
  b ^= blue;
  g ^= blue;
  NEO_SetPixelRGB(x, y, red, green, blue);
  return ERR_OK;
}
Пример #4
0
/* binary XOR the color of an individual pixel */
uint8_t NEO_XorPixelRGB(NEO_PixelIdxT pixelNo, uint8_t red, uint8_t green, uint8_t blue) {
  uint8_t r, g, b;

  if (pixelNo>=NEO_NOF_PIXEL) {
    return ERR_RANGE; /* error, out of range */
  }
  NEO_GetPixelRGB(pixelNo, &r, &g, &b);
  r ^= red;
  b ^= blue;
  g ^= blue;
  NEO_SetPixelRGB(pixelNo, red, green, blue);
  return ERR_OK;
}
Пример #5
0
uint8_t NEO_DimmPercentPixel(NEO_PixelIdxT x, NEO_PixelIdxT y, uint8_t percent) {
  uint8_t red, green, blue;
  uint32_t dRed, dGreen, dBlue;
  uint8_t res;

  res = NEO_GetPixelRGB(x, y, &red, &green, &blue);
  if (res != ERR_OK) {
    return res;
  }
  dRed = ((uint32_t)red*(100-percent))/100;
  dGreen = ((uint32_t)green*(100-percent))/100;
  dBlue = ((uint32_t)blue*(100-percent))/100;
  return NEO_SetPixelRGB(x, y, (uint8_t)dRed, (uint8_t)dGreen, (uint8_t)dBlue);
}