Lines Matching +full:- +full:y

41 lv_color_t lv_img_buf_get_px_color(const lv_img_dsc_t * dsc, lv_coord_t x, lv_coord_t y, lv_color_t…  in lv_img_buf_get_px_color()  argument
44 uint8_t * buf_u8 = (uint8_t *)dsc->data; in lv_img_buf_get_px_color()
46 …if(dsc->header.cf == LV_IMG_CF_TRUE_COLOR || dsc->header.cf == LV_IMG_CF_TRUE_COLOR_CHROMA_KEYED || in lv_img_buf_get_px_color()
47 dsc->header.cf == LV_IMG_CF_TRUE_COLOR_ALPHA || dsc->header.cf == LV_IMG_CF_RGB565A8) { in lv_img_buf_get_px_color()
48 uint8_t px_size = lv_img_cf_get_px_size(dsc->header.cf) >> 3; in lv_img_buf_get_px_color()
49 uint32_t px = dsc->header.w * y * px_size + x * px_size; in lv_img_buf_get_px_color()
55 else if(dsc->header.cf == LV_IMG_CF_INDEXED_1BIT) { in lv_img_buf_get_px_color()
61 *dsc->header.w + 7 means rounding up to 8 because the lines are byte aligned in lv_img_buf_get_px_color()
63 uint32_t px = ((dsc->header.w + 7) >> 3) * y + x; in lv_img_buf_get_px_color()
64 p_color.full = (buf_u8[px] & (1 << (7 - bit))) >> (7 - bit); in lv_img_buf_get_px_color()
66 else if(dsc->header.cf == LV_IMG_CF_INDEXED_2BIT) { in lv_img_buf_get_px_color()
72 *dsc->header.w + 3 means rounding up to 4 because the lines are byte aligned in lv_img_buf_get_px_color()
74 uint32_t px = ((dsc->header.w + 3) >> 2) * y + x; in lv_img_buf_get_px_color()
75 p_color.full = (buf_u8[px] & (3 << (6 - bit))) >> (6 - bit); in lv_img_buf_get_px_color()
77 else if(dsc->header.cf == LV_IMG_CF_INDEXED_4BIT) { in lv_img_buf_get_px_color()
83 *dsc->header.w + 1 means rounding up to 2 because the lines are byte aligned in lv_img_buf_get_px_color()
85 uint32_t px = ((dsc->header.w + 1) >> 1) * y + x; in lv_img_buf_get_px_color()
86 p_color.full = (buf_u8[px] & (0xF << (4 - bit))) >> (4 - bit); in lv_img_buf_get_px_color()
88 else if(dsc->header.cf == LV_IMG_CF_INDEXED_8BIT) { in lv_img_buf_get_px_color()
90 uint32_t px = dsc->header.w * y + x; in lv_img_buf_get_px_color()
93 else if(dsc->header.cf == LV_IMG_CF_ALPHA_1BIT || dsc->header.cf == LV_IMG_CF_ALPHA_2BIT || in lv_img_buf_get_px_color()
94 dsc->header.cf == LV_IMG_CF_ALPHA_4BIT || dsc->header.cf == LV_IMG_CF_ALPHA_8BIT) { in lv_img_buf_get_px_color()
100 lv_opa_t lv_img_buf_get_px_alpha(const lv_img_dsc_t * dsc, lv_coord_t x, lv_coord_t y) in lv_img_buf_get_px_alpha() argument
102 uint8_t * buf_u8 = (uint8_t *)dsc->data; in lv_img_buf_get_px_alpha()
104 if(dsc->header.cf == LV_IMG_CF_TRUE_COLOR_ALPHA) { in lv_img_buf_get_px_alpha()
105 uint32_t px = dsc->header.w * y * LV_IMG_PX_SIZE_ALPHA_BYTE + x * LV_IMG_PX_SIZE_ALPHA_BYTE; in lv_img_buf_get_px_alpha()
106 return buf_u8[px + LV_IMG_PX_SIZE_ALPHA_BYTE - 1]; in lv_img_buf_get_px_alpha()
108 else if(dsc->header.cf == LV_IMG_CF_ALPHA_1BIT) { in lv_img_buf_get_px_alpha()
113 *dsc->header.w + 7 means rounding up to 8 because the lines are byte aligned in lv_img_buf_get_px_alpha()
115 uint32_t px = ((dsc->header.w + 7) >> 3) * y + x; in lv_img_buf_get_px_alpha()
116 uint8_t px_opa = (buf_u8[px] & (1 << (7 - bit))) >> (7 - bit); in lv_img_buf_get_px_alpha()
119 else if(dsc->header.cf == LV_IMG_CF_ALPHA_2BIT) { in lv_img_buf_get_px_alpha()
126 *dsc->header.w + 4 means rounding up to 8 because the lines are byte aligned in lv_img_buf_get_px_alpha()
128 uint32_t px = ((dsc->header.w + 3) >> 2) * y + x; in lv_img_buf_get_px_alpha()
129 uint8_t px_opa = (buf_u8[px] & (3 << (6 - bit))) >> (6 - bit); in lv_img_buf_get_px_alpha()
132 else if(dsc->header.cf == LV_IMG_CF_ALPHA_4BIT) { in lv_img_buf_get_px_alpha()
141 *dsc->header.w + 1 means rounding up to 8 because the lines are byte aligned in lv_img_buf_get_px_alpha()
143 uint32_t px = ((dsc->header.w + 1) >> 1) * y + x; in lv_img_buf_get_px_alpha()
144 uint8_t px_opa = (buf_u8[px] & (0xF << (4 - bit))) >> (4 - bit); in lv_img_buf_get_px_alpha()
147 else if(dsc->header.cf == LV_IMG_CF_ALPHA_8BIT) { in lv_img_buf_get_px_alpha()
148 uint32_t px = dsc->header.w * y + x; in lv_img_buf_get_px_alpha()
155 void lv_img_buf_set_px_alpha(const lv_img_dsc_t * dsc, lv_coord_t x, lv_coord_t y, lv_opa_t opa) in lv_img_buf_set_px_alpha() argument
157 uint8_t * buf_u8 = (uint8_t *)dsc->data; in lv_img_buf_set_px_alpha()
159 if(dsc->header.cf == LV_IMG_CF_TRUE_COLOR_ALPHA) { in lv_img_buf_set_px_alpha()
160 uint8_t px_size = lv_img_cf_get_px_size(dsc->header.cf) >> 3; in lv_img_buf_set_px_alpha()
161 uint32_t px = dsc->header.w * y * px_size + x * px_size; in lv_img_buf_set_px_alpha()
162 buf_u8[px + px_size - 1] = opa; in lv_img_buf_set_px_alpha()
164 else if(dsc->header.cf == LV_IMG_CF_ALPHA_1BIT) { in lv_img_buf_set_px_alpha()
165 opa = opa >> 7; /*opa -> [0,1]*/ in lv_img_buf_set_px_alpha()
170 *dsc->header.w + 7 means rounding up to 8 because the lines are byte aligned in lv_img_buf_set_px_alpha()
172 uint32_t px = ((dsc->header.w + 7) >> 3) * y + x; in lv_img_buf_set_px_alpha()
173 buf_u8[px] = buf_u8[px] & ~(1 << (7 - bit)); in lv_img_buf_set_px_alpha()
174 buf_u8[px] = buf_u8[px] | ((opa & 0x1) << (7 - bit)); in lv_img_buf_set_px_alpha()
176 else if(dsc->header.cf == LV_IMG_CF_ALPHA_2BIT) { in lv_img_buf_set_px_alpha()
177 opa = opa >> 6; /*opa -> [0,3]*/ in lv_img_buf_set_px_alpha()
182 *dsc->header.w + 4 means rounding up to 8 because the lines are byte aligned in lv_img_buf_set_px_alpha()
184 uint32_t px = ((dsc->header.w + 3) >> 2) * y + x; in lv_img_buf_set_px_alpha()
185 buf_u8[px] = buf_u8[px] & ~(3 << (6 - bit)); in lv_img_buf_set_px_alpha()
186 buf_u8[px] = buf_u8[px] | ((opa & 0x3) << (6 - bit)); in lv_img_buf_set_px_alpha()
188 else if(dsc->header.cf == LV_IMG_CF_ALPHA_4BIT) { in lv_img_buf_set_px_alpha()
189 opa = opa >> 4; /*opa -> [0,15]*/ in lv_img_buf_set_px_alpha()
194 *dsc->header.w + 1 means rounding up to 8 because the lines are byte aligned in lv_img_buf_set_px_alpha()
196 uint32_t px = ((dsc->header.w + 1) >> 1) * y + x; in lv_img_buf_set_px_alpha()
197 buf_u8[px] = buf_u8[px] & ~(0xF << (4 - bit)); in lv_img_buf_set_px_alpha()
198 buf_u8[px] = buf_u8[px] | ((opa & 0xF) << (4 - bit)); in lv_img_buf_set_px_alpha()
200 else if(dsc->header.cf == LV_IMG_CF_ALPHA_8BIT) { in lv_img_buf_set_px_alpha()
201 uint32_t px = dsc->header.w * y + x; in lv_img_buf_set_px_alpha()
206 void lv_img_buf_set_px_color(const lv_img_dsc_t * dsc, lv_coord_t x, lv_coord_t y, lv_color_t c) in lv_img_buf_set_px_color() argument
208 uint8_t * buf_u8 = (uint8_t *)dsc->data; in lv_img_buf_set_px_color()
210 …if(dsc->header.cf == LV_IMG_CF_TRUE_COLOR || dsc->header.cf == LV_IMG_CF_TRUE_COLOR_CHROMA_KEYED) { in lv_img_buf_set_px_color()
211 uint8_t px_size = lv_img_cf_get_px_size(dsc->header.cf) >> 3; in lv_img_buf_set_px_color()
212 uint32_t px = dsc->header.w * y * px_size + x * px_size; in lv_img_buf_set_px_color()
215 else if(dsc->header.cf == LV_IMG_CF_TRUE_COLOR_ALPHA) { in lv_img_buf_set_px_color()
216 uint8_t px_size = lv_img_cf_get_px_size(dsc->header.cf) >> 3; in lv_img_buf_set_px_color()
217 uint32_t px = dsc->header.w * y * px_size + x * px_size; in lv_img_buf_set_px_color()
218 lv_memcpy_small(&buf_u8[px], &c, px_size - 1); /*-1 to not overwrite the alpha value*/ in lv_img_buf_set_px_color()
220 else if(dsc->header.cf == LV_IMG_CF_INDEXED_1BIT) { in lv_img_buf_set_px_color()
227 *dsc->header.w + 7 means rounding up to 8 because the lines are byte aligned in lv_img_buf_set_px_color()
229 uint32_t px = ((dsc->header.w + 7) >> 3) * y + x; in lv_img_buf_set_px_color()
230 buf_u8[px] = buf_u8[px] & ~(1 << (7 - bit)); in lv_img_buf_set_px_color()
231 buf_u8[px] = buf_u8[px] | ((c.full & 0x1) << (7 - bit)); in lv_img_buf_set_px_color()
233 else if(dsc->header.cf == LV_IMG_CF_INDEXED_2BIT) { in lv_img_buf_set_px_color()
239 *dsc->header.w + 3 means rounding up to 4 because the lines are byte aligned in lv_img_buf_set_px_color()
241 uint32_t px = ((dsc->header.w + 3) >> 2) * y + x; in lv_img_buf_set_px_color()
243 buf_u8[px] = buf_u8[px] & ~(3 << (6 - bit)); in lv_img_buf_set_px_color()
244 buf_u8[px] = buf_u8[px] | ((c.full & 0x3) << (6 - bit)); in lv_img_buf_set_px_color()
246 else if(dsc->header.cf == LV_IMG_CF_INDEXED_4BIT) { in lv_img_buf_set_px_color()
252 *dsc->header.w + 1 means rounding up to 2 because the lines are byte aligned in lv_img_buf_set_px_color()
254 uint32_t px = ((dsc->header.w + 1) >> 1) * y + x; in lv_img_buf_set_px_color()
255 buf_u8[px] = buf_u8[px] & ~(0xF << (4 - bit)); in lv_img_buf_set_px_color()
256 buf_u8[px] = buf_u8[px] | ((c.full & 0xF) << (4 - bit)); in lv_img_buf_set_px_color()
258 else if(dsc->header.cf == LV_IMG_CF_INDEXED_8BIT) { in lv_img_buf_set_px_color()
260 uint32_t px = dsc->header.w * y + x; in lv_img_buf_set_px_color()
267 …if((dsc->header.cf == LV_IMG_CF_ALPHA_1BIT && id > 1) || (dsc->header.cf == LV_IMG_CF_ALPHA_2BIT &… in lv_img_buf_set_palette()
268 … (dsc->header.cf == LV_IMG_CF_ALPHA_4BIT && id > 15) || (dsc->header.cf == LV_IMG_CF_ALPHA_8BIT)) { in lv_img_buf_set_palette()
275 uint8_t * buf = (uint8_t *)dsc->data; in lv_img_buf_set_palette()
289 dsc->data_size = lv_img_buf_get_img_size(w, h, cf); in lv_img_buf_alloc()
290 if(dsc->data_size == 0) { in lv_img_buf_alloc()
296 dsc->data = lv_mem_alloc(dsc->data_size); in lv_img_buf_alloc()
297 if(dsc->data == NULL) { in lv_img_buf_alloc()
301 lv_memset_00((uint8_t *)dsc->data, dsc->data_size); in lv_img_buf_alloc()
304 dsc->header.always_zero = 0; in lv_img_buf_alloc()
305 dsc->header.w = w; in lv_img_buf_alloc()
306 dsc->header.h = h; in lv_img_buf_alloc()
307 dsc->header.cf = cf; in lv_img_buf_alloc()
314 if(dsc->data != NULL) in lv_img_buf_free()
315 lv_mem_free((void *)dsc->data); in lv_img_buf_free()
357 res->x1 = 0; in _lv_img_buf_get_transformed_area()
358 res->y1 = 0; in _lv_img_buf_get_transformed_area()
359 res->x2 = w - 1; in _lv_img_buf_get_transformed_area()
360 res->y2 = h - 1; in _lv_img_buf_get_transformed_area()
374 res->x1 = LV_MIN4(p[0].x, p[1].x, p[2].x, p[3].x) - 2; in _lv_img_buf_get_transformed_area()
375 res->x2 = LV_MAX4(p[0].x, p[1].x, p[2].x, p[3].x) + 2; in _lv_img_buf_get_transformed_area()
376 res->y1 = LV_MIN4(p[0].y, p[1].y, p[2].y, p[3].y) - 2; in _lv_img_buf_get_transformed_area()
377 res->y2 = LV_MAX4(p[0].y, p[1].y, p[2].y, p[3].y) + 2; in _lv_img_buf_get_transformed_area()
383 res->x1 = 0; in _lv_img_buf_get_transformed_area()
384 res->y1 = 0; in _lv_img_buf_get_transformed_area()
385 res->x2 = w - 1; in _lv_img_buf_get_transformed_area()
386 res->y2 = h - 1; in _lv_img_buf_get_transformed_area()