glib_circle.c File Reference
Silicon Labs Graphics Library: Circle Drawing Routines.
License
Copyright 2015 Silicon Labs, http://www.silabs.com
This file is licensensed under the Silabs License Agreement. See the file "Silabs_License_Agreement.txt" for details. Before using this software for any purpose, you must agree to the terms of that agreement.
Definition in file
glib_circle.c
.
#include <stdint.h>
#include "em_types.h"
#include "
glib.h
"
Functions |
|
EMSTATUS | GLIB_drawCircle ( GLIB_Context_t *pContext, int32_t xCenter, int32_t yCenter, uint32_t radius) |
Draws a circle with center at x, y, and a radius.
|
|
EMSTATUS | GLIB_drawCircleFilled ( GLIB_Context_t *pContext, int32_t xCenter, int32_t yCenter, uint32_t radius) |
Draws a filled circle with center at x, y, and a radius.
|
|
EMSTATUS | GLIB_drawPartialCircle ( GLIB_Context_t *pContext, int32_t xCenter, int32_t yCenter, uint32_t radius, uint8_t bitMask) |
Draws a partial circle with center at x, y, and a radius.
|
|
static EMSTATUS | GLIB_drawPartialCirclePoints ( GLIB_Context_t *pContext, int32_t xCenter, int32_t yCenter, int32_t x, int32_t y, uint8_t bitMask) |
Draws circle points using 8-way symmetry.
|
|
Function Documentation
|
static |
Draws circle points using 8-way symmetry.
Example: bitMask = 4 draws only pixels in 3. octant (00000100). bitMask = 5 draws only pixels in 3. and 1. octant (00000101).
- Parameters
-
pContext
Pointer to a GLIB_Context_t in which the circle is drawn. The circle is drawn using the foreground color. xCenter
Center x-coordinate yCenter
Center y-coordinate x
x-coordinate of circle point y
y-coordinate of circle point bitMask
Bitmask which decides which octants pixels should be drawn The LSB is 1. octant, and the MSB is 8. octant. The octants are ordered from 1 to 8 in counterclockwise order.
- Returns
-
- Returns GLIB_OK on succes.
- Returns GLIB_ERROR_NOTHING_TO_DRAW if none of the points were drawn
- Returns error code otherwise
Definition at line
246
of file
glib_circle.c
.
References GLIB_drawPixel() , GLIB_ERROR_NOTHING_TO_DRAW , and GLIB_OK .
Referenced by GLIB_drawPartialCircle() .