@@ -175,6 +175,7 @@ namespace pimoroni {
175
175
PenType pen_type;
176
176
Rect bounds;
177
177
Rect clip;
178
+ uint thickness = 1 ;
178
179
179
180
180
181
@@ -228,6 +229,7 @@ namespace pimoroni {
228
229
virtual void set_pen (uint8_t r, uint8_t g, uint8_t b) = 0;
229
230
virtual void set_pixel (const Point &p) = 0;
230
231
virtual void set_pixel_span (const Point &p, uint l) = 0;
232
+ virtual void set_thickness (uint t) = 0;
231
233
232
234
virtual int create_pen (uint8_t r, uint8_t g, uint8_t b);
233
235
virtual int create_pen_hsv (float h, float s, float v);
@@ -264,6 +266,7 @@ namespace pimoroni {
264
266
void triangle (Point p1, Point p2, Point p3);
265
267
void line (Point p1, Point p2);
266
268
void from_hsv (float h, float s, float v, uint8_t &r, uint8_t &g, uint8_t &b);
269
+ void thick_line (Point p1, Point p2, uint thickness);
267
270
268
271
protected:
269
272
void frame_convert_rgb565 (conversion_callback_func callback, next_pixel_func get_next_pixel);
@@ -276,6 +279,7 @@ namespace pimoroni {
276
279
PicoGraphics_Pen1Bit (uint16_t width, uint16_t height, void *frame_buffer);
277
280
void set_pen (uint c) override ;
278
281
void set_pen (uint8_t r, uint8_t g, uint8_t b) override ;
282
+ void set_thickness (uint t) override ;
279
283
280
284
void set_pixel (const Point &p) override ;
281
285
void set_pixel_span (const Point &p, uint l) override ;
@@ -292,6 +296,7 @@ namespace pimoroni {
292
296
PicoGraphics_Pen1BitY (uint16_t width, uint16_t height, void *frame_buffer);
293
297
void set_pen (uint c) override ;
294
298
void set_pen (uint8_t r, uint8_t g, uint8_t b) override ;
299
+ void set_thickness (uint t) override ;
295
300
296
301
void set_pixel (const Point &p) override ;
297
302
void set_pixel_span (const Point &p, uint l) override ;
@@ -334,6 +339,7 @@ namespace pimoroni {
334
339
335
340
void set_pen (uint c) override ;
336
341
void set_pen (uint8_t r, uint8_t g, uint8_t b) override ;
342
+ void set_thickness (uint t) override {};
337
343
338
344
void set_pixel (const Point &p) override ;
339
345
void set_pixel_span (const Point &p, uint l) override ;
@@ -360,6 +366,7 @@ namespace pimoroni {
360
366
PicoGraphics_PenP4 (uint16_t width, uint16_t height, void *frame_buffer);
361
367
void set_pen (uint c) override ;
362
368
void set_pen (uint8_t r, uint8_t g, uint8_t b) override ;
369
+ void set_thickness (uint t) override {};
363
370
int update_pen (uint8_t i, uint8_t r, uint8_t g, uint8_t b) override ;
364
371
int create_pen (uint8_t r, uint8_t g, uint8_t b) override ;
365
372
int reset_pen (uint8_t i) override ;
@@ -389,6 +396,7 @@ namespace pimoroni {
389
396
PicoGraphics_PenP8 (uint16_t width, uint16_t height, void *frame_buffer);
390
397
void set_pen (uint c) override ;
391
398
void set_pen (uint8_t r, uint8_t g, uint8_t b) override ;
399
+ void set_thickness (uint t) override {};
392
400
int update_pen (uint8_t i, uint8_t r, uint8_t g, uint8_t b) override ;
393
401
int create_pen (uint8_t r, uint8_t g, uint8_t b) override ;
394
402
int reset_pen (uint8_t i) override ;
@@ -410,6 +418,7 @@ namespace pimoroni {
410
418
PicoGraphics_PenRGB332 (uint16_t width, uint16_t height, void *frame_buffer);
411
419
void set_pen (uint c) override ;
412
420
void set_pen (uint8_t r, uint8_t g, uint8_t b) override ;
421
+ void set_thickness (uint t) override {};
413
422
int create_pen (uint8_t r, uint8_t g, uint8_t b) override ;
414
423
void set_pixel (const Point &p) override ;
415
424
void set_pixel_span (const Point &p, uint l) override ;
@@ -431,6 +440,7 @@ namespace pimoroni {
431
440
PicoGraphics_PenRGB565 (uint16_t width, uint16_t height, void *frame_buffer);
432
441
void set_pen (uint c) override ;
433
442
void set_pen (uint8_t r, uint8_t g, uint8_t b) override ;
443
+ void set_thickness (uint t) override {};
434
444
int create_pen (uint8_t r, uint8_t g, uint8_t b) override ;
435
445
int create_pen_hsv (float h, float s, float v) override ;
436
446
void set_pixel (const Point &p) override ;
@@ -447,6 +457,7 @@ namespace pimoroni {
447
457
PicoGraphics_PenRGB888 (uint16_t width, uint16_t height, void *frame_buffer);
448
458
void set_pen (uint c) override ;
449
459
void set_pen (uint8_t r, uint8_t g, uint8_t b) override ;
460
+ void set_thickness (uint t) override {};
450
461
int create_pen (uint8_t r, uint8_t g, uint8_t b) override ;
451
462
int create_pen_hsv (float h, float s, float v) override ;
452
463
void set_pixel (const Point &p) override ;
0 commit comments