- /* 3 other circles of smaller diameter circle on which signals live */
-
- cairo_set_line_width (cr, 1.0);
- cairo_set_source_rgba (cr, 0.282, 0.517, 0.662, 1.0);
- cairo_arc (cr, radius, radius, radius * 0.75, 0, 2.0 * M_PI);
- cairo_stroke (cr);
- cairo_set_source_rgba (cr, 0.282, 0.517, 0.662, 0.85);
- cairo_arc (cr, radius, radius, radius * 0.50, 0, 2.0 * M_PI);
- cairo_stroke (cr);
- cairo_arc (cr, radius, radius, radius * 0.25, 0, 2.0 * M_PI);
- cairo_stroke (cr);
-
- if (signals.size() > 1) {
- /* arc to show "diffusion" */
-
- double width_angle = fabs (panner_shell->pannable()->pan_width_control->get_value()) * 2 * M_PI;
- double position_angle = (2 * M_PI) - panner_shell->pannable()->pan_azimuth_control->get_value() * 2 * M_PI;
-
- cairo_save (cr);
- cairo_translate (cr, radius, radius);
- cairo_rotate (cr, position_angle - (width_angle/2.0));
- cairo_move_to (cr, 0, 0);
- cairo_arc_negative (cr, 0, 0, radius, width_angle, 0.0);
- cairo_close_path (cr);
- if (panner_shell->pannable()->pan_width_control->get_value() >= 0.0) {
- /* normal width */
- cairo_set_source_rgba (cr, 0.282, 0.517, 0.662, 0.45);
- } else {
- /* inverse width */
- cairo_set_source_rgba (cr, 1.0, 0.419, 0.419, 0.45);
- }
- cairo_fill (cr);
- cairo_restore (cr);
- }
+ for (uint32_t rad = 15; rad < 90; rad += 15) {
+ cairo_set_line_width (cr, .5 + (float)rad / 150.0);
+ if (rad == 45) {
+ cairo_set_source_rgba (cr, 0.282, 0.517, 0.662, 1.0);
+ } else {
+ cairo_set_source_rgba (cr, 0.282, 0.517, 0.662, 0.8);
+ }
+ cairo_new_path (cr);
+ cairo_arc (cr, radius, radius, radius * sin(M_PI * (float) rad / 180.0), 0, 2.0 * M_PI);
+ cairo_stroke (cr);
+ }