vgSeti(VG_RENDERING_QUALITY, VG_RENDERING_QUALITY_BETTER);
// set fill color
float colorFill[4] = { 0.6f, 0.6f, 0.6f, 1.0f };
VGPaint fillPaint = vgCreatePaint();
vgSetParameteri(fillPaint, VG_PAINT_TYPE, VG_PAINT_TYPE_COLOR);
vgSetParameterfv(fillPaint, VG_PAINT_COLOR, 4, colorFill);
vgSetPaint(fillPaint, VG_FILL_PATH);
vgDestroyPaint(fillPaint);
// set stroke color
float colorStroke[4] = { 0.0f, 0.0f, 0.5f, 1.0f };
VGPaint strokePaint = vgCreatePaint();
vgSetParameteri(strokePaint, VG_PAINT_TYPE, VG_PAINT_TYPE_COLOR);
vgSetParameterfv(strokePaint, VG_PAINT_COLOR, 4, colorStroke);
vgSetPaint(strokePaint, VG_STROKE_PATH);
vgSetf(VG_STROKE_LINE_WIDTH, 30.0f);
vgSeti(VG_STROKE_CAP_STYLE, VG_CAP_SQUARE);
vgSeti(VG_STROKE_JOIN_STYLE, VG_JOIN_ROUND);
vgDestroyPaint(strokePaint);
VGPath path = vgCreatePath(VG_PATH_FORMAT_STANDARD, VG_PATH_DATATYPE_F,
256.0f, 0.0f, 0, 0, VG_PATH_CAPABILITY_ALL);
vguEllipse(path, 400.0f, 600.0f, 400.0f, 200.0f);
vguRect(path, 200.0f, 200.0f, 400.0f, 200.0f);
vgDrawPath(path, VG_STROKE_PATH | VG_FILL_PATH);