clan::Image Alpha::create_block(clan::Canvas &canvas, const clan::Colorf &colour) { const int size = 24; clan::Color colour_int(colour); clan::ubyte8 colour_a = colour_int.a; clan::ubyte8 colour_r = colour_int.r; clan::ubyte8 colour_g = colour_int.g; clan::ubyte8 colour_b = colour_int.b; clan::PixelBuffer pbuff(size, size, clan::tf_rgba8); clan::ubyte8 *pixels = (clan::ubyte8 *) pbuff.get_data(); int pitch = pbuff.get_pitch(); for (int ypos = 0; ypos < size; ypos++) { clan::ubyte8 *dest_ptr = pixels + ypos * pitch; for (int xpos = 0; xpos < size; xpos++) { *(dest_ptr++) = colour_a; *(dest_ptr++) = colour_b; *(dest_ptr++) = colour_g; *(dest_ptr++) = colour_r; } } return clan::Image(canvas, pbuff, pbuff.get_size()); }
clan::Image Alpha::create_block(clan::Canvas &canvas, const clan::Colorf &colour) { const int size = 24; clan::Color colour_int(colour); clan::PixelBuffer pbuff(size, size, clan::tf_rgba8); uint8_t *pixels = pbuff.get_data_uint8(); int pitch = pbuff.get_pitch(); for (int ypos = 0; ypos < size; ypos++) { uint8_t *dest_ptr = pixels + ypos * pitch; for (int xpos = 0; xpos < size; xpos++) { *(dest_ptr++) = colour_int.r; *(dest_ptr++) = colour_int.g; *(dest_ptr++) = colour_int.b; *(dest_ptr++) = colour_int.a; } } return clan::Image(canvas, pbuff, pbuff.get_size()); }