void PixelStrip::show() { switch (myConversionMethod) { case CONVERSION_METHOD_DINO_PACK: for (int i=0; i<getNumPixels(); ++i) { if (i < 8) { myStrip->setPixelColorWithBrightness(((i/2)*8)+2*(i%2), myPixels[i].getColor(), myPixels[i].getBrightness()); myStrip->setPixelColorWithBrightness(((i/2)*8)+2*(i%2)+1, myPixels[i].getColor(), myPixels[i].getBrightness()); myStrip->setPixelColorWithBrightness(((i/2)*8)+2*(i%2)+4, myPixels[i].getColor(), myPixels[i].getBrightness()); myStrip->setPixelColorWithBrightness(((i/2)*8)+2*(i%2)+5, myPixels[i].getColor(), myPixels[i].getBrightness()); } else { myStrip->setPixelColorWithBrightness(2*(i-8)+32, myPixels[i].getColor(), myPixels[i].getBrightness()); myStrip->setPixelColorWithBrightness(2*(i-8)+33, myPixels[i].getColor(), myPixels[i].getBrightness()); } } break; case CONVERSION_METHOD_VEST: for (int i=0; i<getNumPixels(); ++i) { myStrip->setPixelColorWithBrightness(i, myPixels[i].getColor(), myPixels[i].getBrightness()); myStrip->setPixelColorWithBrightness(59-i-1, myPixels[i].getColor(), myPixels[i].getBrightness()); } break; default: for (int i=0; i<myStrip->numPixels(); ++i) { myStrip->setPixelColorWithBrightness(i, myPixels[i].getColor(), myPixels[i].getBrightness()); } break; } myStrip->show(); }
GLubyte *Z3DTexture::downloadTextureToBuffer(GLint dataFormat, GLenum dataType, size_t *bufferSize) const { bind(); GLubyte* data = new GLubyte[getBypePerPixel(dataFormat, dataType) * getNumPixels()]; glGetTexImage(m_textureTarget, 0, dataFormat, dataType, data); if (bufferSize != NULL) { *bufferSize = getBypePerPixel(dataFormat, dataType) * getNumPixels(); } return data; }
void PixelStrip::setMasterBrightness(uint8_t masterBrightness) { for (int i = 0; i < getNumPixels(); ++i) { myPixels[i].setMasterBrightness(masterBrightness); } }
int Z3DTexture::getTextureSizeOnGPU() const { return getBypePerPixel(m_internalFormat) * getNumPixels(); }