static void _cairo_gl_composite_emit_point (cairo_gl_context_t *ctx, const cairo_point_t *point) { _cairo_gl_composite_emit_vertex (ctx, _cairo_fixed_to_double (point->x), _cairo_fixed_to_double (point->y)); }
static inline void _cairo_gl_composite_emit_point (cairo_gl_context_t *ctx, const cairo_point_t *point, uint8_t alpha) { _cairo_gl_composite_emit_vertex (ctx, _cairo_fixed_to_double (point->x), _cairo_fixed_to_double (point->y), alpha); }
static void _cairo_gl_composite_emit_rect (cairo_gl_context_t *ctx, GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2) { _cairo_gl_composite_prepare_buffer (ctx, 6, CAIRO_GL_PRIMITIVE_TYPE_TRIANGLES); _cairo_gl_composite_emit_vertex (ctx, x1, y1); _cairo_gl_composite_emit_vertex (ctx, x2, y1); _cairo_gl_composite_emit_vertex (ctx, x1, y2); _cairo_gl_composite_emit_vertex (ctx, x2, y1); _cairo_gl_composite_emit_vertex (ctx, x2, y2); _cairo_gl_composite_emit_vertex (ctx, x1, y2); }
void _cairo_gl_composite_emit_rect (cairo_gl_context_t *ctx, GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2, uint8_t alpha) { _cairo_gl_composite_prepare_buffer (ctx, 6); _cairo_gl_composite_emit_vertex (ctx, x1, y1, alpha); _cairo_gl_composite_emit_vertex (ctx, x2, y1, alpha); _cairo_gl_composite_emit_vertex (ctx, x1, y2, alpha); _cairo_gl_composite_emit_vertex (ctx, x2, y1, alpha); _cairo_gl_composite_emit_vertex (ctx, x2, y2, alpha); _cairo_gl_composite_emit_vertex (ctx, x1, y2, alpha); }
void _cairo_gl_composite_emit_rect (cairo_gl_context_t *ctx, GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2, uint8_t alpha) { if (ctx->draw_mode != CAIRO_GL_VERTEX) { _cairo_gl_composite_flush (ctx); ctx->draw_mode = CAIRO_GL_VERTEX; } _cairo_gl_composite_prepare_buffer (ctx, 6, CAIRO_GL_PRIMITIVE_TYPE_TRIANGLES); _cairo_gl_composite_emit_vertex (ctx, x1, y1, alpha); _cairo_gl_composite_emit_vertex (ctx, x2, y1, alpha); _cairo_gl_composite_emit_vertex (ctx, x1, y2, alpha); _cairo_gl_composite_emit_vertex (ctx, x2, y1, alpha); _cairo_gl_composite_emit_vertex (ctx, x2, y2, alpha); _cairo_gl_composite_emit_vertex (ctx, x1, y2, alpha); }