static void _adg_render(AdgEntity *entity, cairo_t *cr) { AdgLogoClassPrivate *data_class = ADG_LOGO_GET_CLASS(entity)->data_class; AdgLogoPrivate *data = adg_logo_get_instance_private((AdgLogo *) entity); const cairo_path_t *cairo_path; cairo_transform(cr, adg_entity_get_global_matrix(entity)); cairo_set_line_cap(cr, CAIRO_LINE_CAP_ROUND); cairo_path = adg_trail_get_cairo_path((AdgTrail *) data_class->symbol); if (cairo_path != NULL) { cairo_save(cr); cairo_transform(cr, adg_entity_get_local_matrix(entity)); cairo_append_path(cr, cairo_path); cairo_restore(cr); cairo_set_line_width(cr, 3); adg_entity_apply_dress(entity, data->symbol_dress, cr); cairo_stroke(cr); } cairo_path = adg_trail_get_cairo_path((AdgTrail *) data_class->screen); if (cairo_path != NULL) { cairo_save(cr); cairo_transform(cr, adg_entity_get_local_matrix(entity)); cairo_append_path(cr, cairo_path); cairo_restore(cr); cairo_set_line_width(cr, 2); adg_entity_apply_dress(entity, data->screen_dress, cr); cairo_stroke(cr); } cairo_path = adg_trail_get_cairo_path((AdgTrail *) data_class->frame); if (cairo_path != NULL) { cairo_save(cr); cairo_transform(cr, adg_entity_get_local_matrix(entity)); cairo_append_path(cr, cairo_path); cairo_restore(cr); cairo_set_line_width(cr, 2); cairo_set_antialias(cr, CAIRO_ANTIALIAS_NONE); adg_entity_apply_dress(entity, data->frame_dress, cr); cairo_stroke(cr); } }
static void _adg_render(AdgEntity *entity, cairo_t *cr) { AdgProjectionPrivate *data = adg_projection_get_instance_private((AdgProjection *) entity); AdgProjectionClassPrivate *data_class = ADG_PROJECTION_GET_CLASS(entity)->data_class; const cairo_path_t *cairo_path; cairo_transform(cr, adg_entity_get_global_matrix(entity)); if (data_class->symbol != NULL) { cairo_path = adg_trail_get_cairo_path((AdgTrail *) data_class->symbol); cairo_save(cr); cairo_transform(cr, adg_entity_get_local_matrix(entity)); cairo_append_path(cr, cairo_path); cairo_restore(cr); cairo_set_line_width(cr, 2); adg_entity_apply_dress(entity, data->symbol_dress, cr); cairo_stroke(cr); } if (data_class->axis != NULL) { const gdouble dashes[] = { 5, 2, 1, 2 }; cairo_path = adg_trail_get_cairo_path((AdgTrail *) data_class->axis); cairo_save(cr); cairo_transform(cr, adg_entity_get_local_matrix(entity)); cairo_append_path(cr, cairo_path); cairo_restore(cr); cairo_set_line_width(cr, 1); cairo_set_dash(cr, dashes, G_N_ELEMENTS(dashes), -1.5); adg_entity_apply_dress(entity, data->axis_dress, cr); cairo_stroke(cr); } }
static void _adg_render(AdgEntity *entity, cairo_t *cr) { AdgStroke *stroke; AdgStrokePrivate *data; const cairo_path_t *cairo_path; stroke = (AdgStroke *) entity; data = stroke->data; cairo_path = adg_trail_get_cairo_path(data->trail); if (cairo_path != NULL) { cairo_transform(cr, adg_entity_get_global_matrix(entity)); cairo_save(cr); cairo_transform(cr, adg_entity_get_local_matrix(entity)); cairo_append_path(cr, cairo_path); cairo_restore(cr); adg_entity_apply_dress(entity, data->line_dress, cr); cairo_stroke(cr); } }
static void _adg_render(AdgEntity *entity, cairo_t *cr) { AdgADim *adim; AdgDim *dim; AdgADimPrivate *data; AdgDimStyle *dim_style; AdgDress dress; const cairo_path_t *cairo_path; adim = (AdgADim *) entity; data = adim->data; if (!data->geometry_arranged) { /* Entity not arranged, probably due to undefined pair found */ return; } dim = (AdgDim *) entity; dim_style = _ADG_GET_DIM_STYLE(dim); adg_style_apply((AdgStyle *) dim_style, entity, cr); adg_entity_render((AdgEntity *) adg_dim_get_quote(dim), cr); if (data->marker1 != NULL) adg_entity_render((AdgEntity *) data->marker1, cr); if (data->marker2 != NULL) adg_entity_render((AdgEntity *) data->marker2, cr); cairo_transform(cr, adg_entity_get_global_matrix(entity)); dress = adg_dim_style_get_line_dress(dim_style); adg_entity_apply_dress(entity, dress, cr); cairo_path = adg_trail_get_cairo_path(data->trail); cairo_append_path(cr, cairo_path); cairo_stroke(cr); }