Adding missing GWIN wrapper for ArcSectors functions
This commit is contained in:
parent
d9dd6673b7
commit
665d998f43
2 changed files with 63 additions and 1 deletions
|
@ -299,6 +299,20 @@ void gwinBlitArea(GHandle gh, coord_t x, coord_t y, coord_t cx, coord_t cy, coor
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if GDISP_NEED_ARCSECTORS
|
||||||
|
void gwinDrawArcSectors(GHandle gh, coord_t x, coord_t y, coord_t radius, uint8_t sectors) {
|
||||||
|
if (!_gwinDrawStart(gh)) return;
|
||||||
|
gdispGDrawArcSectors(gh->display, gh->x+x, gh->y+y, radius, sectors, gh->color);
|
||||||
|
_gwinDrawEnd(gh);
|
||||||
|
}
|
||||||
|
|
||||||
|
void gwinFillArcSectors(GHandle gh, coord_t x, coord_t y, coord_t radius, uint8_t sectors) {
|
||||||
|
if (!_gwinDrawStart(gh)) return;
|
||||||
|
gdispGFillArcSectors(gh->display, gh->x+x, gh->y+y, radius, sectors, gh->color);
|
||||||
|
_gwinDrawEnd(gh);
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
#if GDISP_NEED_PIXELREAD
|
#if GDISP_NEED_PIXELREAD
|
||||||
color_t gwinGetPixelColor(GHandle gh, coord_t x, coord_t y) {
|
color_t gwinGetPixelColor(GHandle gh, coord_t x, coord_t y) {
|
||||||
if (!_gwinDrawStart(gh)) return (color_t)0;
|
if (!_gwinDrawStart(gh)) return (color_t)0;
|
||||||
|
|
|
@ -646,7 +646,7 @@ extern "C" {
|
||||||
void gwinBlitArea(GHandle gh, coord_t x, coord_t y, coord_t cx, coord_t cy, coord_t srcx, coord_t srcy, coord_t srccx, const pixel_t *buffer);
|
void gwinBlitArea(GHandle gh, coord_t x, coord_t y, coord_t cx, coord_t cy, coord_t srcx, coord_t srcy, coord_t srccx, const pixel_t *buffer);
|
||||||
|
|
||||||
/*-------------------------------------------------
|
/*-------------------------------------------------
|
||||||
* Circle, ellipse and arc functions
|
* Circle, ellipse, arc and arc-sectors functions
|
||||||
*-------------------------------------------------*/
|
*-------------------------------------------------*/
|
||||||
|
|
||||||
#if GDISP_NEED_CIRCLE || defined(__DOXYGEN__)
|
#if GDISP_NEED_CIRCLE || defined(__DOXYGEN__)
|
||||||
|
@ -737,6 +737,54 @@ extern "C" {
|
||||||
void gwinFillArc(GHandle gh, coord_t x, coord_t y, coord_t radius, coord_t startangle, coord_t endangle);
|
void gwinFillArc(GHandle gh, coord_t x, coord_t y, coord_t radius, coord_t startangle, coord_t endangle);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if GDISP_NEED_ARCSECTORS || defined(__DOXYGEN__)
|
||||||
|
/*
|
||||||
|
* @brief Draw a selection of 45 degree arcs of a circle in the window.
|
||||||
|
* @note Uses the current foreground color to draw the arc sector
|
||||||
|
* @note May leave GDISP clipping to this window's dimensions
|
||||||
|
*
|
||||||
|
* @param[in] gh The window handle
|
||||||
|
* @param[in] x,y The center of the circle
|
||||||
|
* @param[in] radius The radius of the circle
|
||||||
|
* @param[in] sectors Bits determine which sectors are drawn.
|
||||||
|
* Bits go anti-clockwise from the 0 degree mark (y = 0, x is positive), as follows:
|
||||||
|
* bit 0 - upper right right -----
|
||||||
|
* bit 1 - upper upper right /2 1\
|
||||||
|
* bit 2 - upper upper left /3 0\
|
||||||
|
* bit 3 - upper left left \4 7/
|
||||||
|
* bit 4 - lower left left \5 6/
|
||||||
|
* bit 5 - lower lower left -----
|
||||||
|
* bit 6 - lower lower right
|
||||||
|
* bit 7 - lower left left
|
||||||
|
*
|
||||||
|
* @api
|
||||||
|
*/
|
||||||
|
void gwinDrawArcSectors(GHandle gh, coord_t x, coord_t y, coord_t radius, uint8_t sectors);
|
||||||
|
|
||||||
|
/*
|
||||||
|
* @brief Draw a filled selection of 45 degree arcs of a circle in the window.
|
||||||
|
* @note Uses the current foreground color to draw the arc sector
|
||||||
|
* @note May leave GDISP clipping to this window's dimensions
|
||||||
|
*
|
||||||
|
* @param[in] gh The window handle
|
||||||
|
* @param[in] x,y The center of the circle
|
||||||
|
* @param[in] radius The radius of the circle
|
||||||
|
* @param[in] sectors Bits determine which sectors are drawn.
|
||||||
|
* Bits go anti-clockwise from the 0 degree mark (y = 0, x is positive), as follows:
|
||||||
|
* bit 0 - upper right right -----
|
||||||
|
* bit 1 - upper upper right /2 1\
|
||||||
|
* bit 2 - upper upper left /3 0\
|
||||||
|
* bit 3 - upper left left \4 7/
|
||||||
|
* bit 4 - lower left left \5 6/
|
||||||
|
* bit 5 - lower lower left -----
|
||||||
|
* bit 6 - lower lower right
|
||||||
|
* bit 7 - lower left left
|
||||||
|
*
|
||||||
|
* @api
|
||||||
|
*/
|
||||||
|
void gwinFillArcSectors(GHandle gh, coord_t x, coord_t y, coord_t radius, uint8_t sectors);
|
||||||
|
#endif
|
||||||
|
|
||||||
/*-------------------------------------------------
|
/*-------------------------------------------------
|
||||||
* Pixel read-back functions
|
* Pixel read-back functions
|
||||||
*-------------------------------------------------*/
|
*-------------------------------------------------*/
|
||||||
|
|
Loading…
Add table
Reference in a new issue