From patchwork Mon Jul 6 12:35:37 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Lespiau, Damien" X-Patchwork-Id: 6723321 Return-Path: X-Original-To: patchwork-intel-gfx@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id A1F5F9F38C for ; Mon, 6 Jul 2015 12:35:58 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id CB77E202F0 for ; Mon, 6 Jul 2015 12:35:57 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id D829120600 for ; Mon, 6 Jul 2015 12:35:56 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 505A96E870; Mon, 6 Jul 2015 05:35:56 -0700 (PDT) X-Original-To: intel-gfx@lists.freedesktop.org Delivered-To: intel-gfx@lists.freedesktop.org Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id 2A5F66E877 for ; Mon, 6 Jul 2015 05:35:55 -0700 (PDT) Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by orsmga101.jf.intel.com with ESMTP; 06 Jul 2015 05:35:55 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.15,414,1432623600"; d="scan'208";a="741421034" Received: from magarwal-mobl.amr.corp.intel.com (HELO strange.amr.corp.intel.com) ([10.254.77.111]) by fmsmga001.fm.intel.com with ESMTP; 06 Jul 2015 05:35:54 -0700 From: Damien Lespiau To: intel-gfx@lists.freedesktop.org Date: Mon, 6 Jul 2015 13:35:37 +0100 Message-Id: <1436186144-19665-10-git-send-email-damien.lespiau@intel.com> X-Mailer: git-send-email 2.1.0 In-Reply-To: <1436186144-19665-1-git-send-email-damien.lespiau@intel.com> References: <1436186144-19665-1-git-send-email-damien.lespiau@intel.com> Subject: [Intel-gfx] [PATCH i-g-t 09/16] plot: Draw a grid in the background X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" X-Spam-Status: No, score=-4.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Signed-off-by: Damien Lespiau --- lib/igt_plot.c | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/lib/igt_plot.c b/lib/igt_plot.c index 126f160..c8d6dcb 100644 --- a/lib/igt_plot.c +++ b/lib/igt_plot.c @@ -452,6 +452,37 @@ igt_plot_draw_text(igt_plot_t *plot, double x, double y, igt_label_t *label) cairo_show_text(plot->cr, label->text); } +static void igt_plot_draw_grid(igt_plot_t *plot, flush_t *flush) +{ + unsigned int i, n_ticks; + igt_box_t *area = &flush->plot_area; + double area_width, area_height; + + area_width = area->x2 - area->x1; + area_height = area->y2 - area->y1; + + cairo_set_source_rgb(plot->cr, 0.9, 0.9, 0.9); + cairo_set_line_width(plot->cr, 1.0); + + n_ticks = plot->x_axis.n_ticks; + for (i = 0; i < n_ticks; i++) { + double x = area->x1 + i * area_width / (n_ticks - 1); + + cairo_move_to(plot->cr, SNAP(x), area->y2); + cairo_line_to(plot->cr, SNAP(x), area->y1); + cairo_stroke(plot->cr); + } + + n_ticks = plot->y_axis.n_ticks; + for (i = 0; i < n_ticks; i++) { + double y = area->y2 - i * area_height / (n_ticks - 1); + + cairo_move_to(plot->cr, area->x1, SNAP(y)); + cairo_line_to(plot->cr, area->x2, SNAP(y)); + cairo_stroke(plot->cr); + } +} + static double fit(double p, double start, double range, double scale) { return start + (range / 2 + p) * scale; @@ -508,6 +539,7 @@ static void igt_plot_draw_ticks(igt_plot_t *plot, igt_plot_axis_t *axis, area_height = area->y2 - area->y1; cairo_set_font_size(plot->cr, flush->tick_label_font_size); + cairo_set_source_rgb(plot->cr, 0.0, 0.0, 0.0); cairo_set_line_cap(plot->cr, CAIRO_LINE_CAP_SQUARE); cairo_set_line_width(plot->cr, 1.0); @@ -560,6 +592,8 @@ static void igt_plot_draw_axis(igt_plot_t *plot, flush_t *flush) igt_box_t *area = &flush->plot_area; const double tick_length = plot_length(plot, 0.01); + igt_plot_draw_grid(plot, flush); + /* X-axis */ cairo_move_to(plot->cr, area->x1, area->y2); cairo_line_to(plot->cr, area->x2, area->y2);