aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYordan Karadzhov (VMware) <y.karadz@gmail.com>2020-12-11 17:07:53 +0200
committerSteven Rostedt (VMware) <rostedt@goodmis.org>2020-12-21 19:13:16 -0500
commite143a886b344ef3f9434c278f82db3b2539cb704 (patch)
tree032687229a5c7acb99d86759bf957a6701424c98
parentdf4b7308913d80af145d8725adfac5b9a61fe0ab (diff)
downloadkernel-shark-e143a886b344ef3f9434c278f82db3b2539cb704.tar.gz
kernel-shark: Optimize ksplot_draw_polygon()
Using a point inside the polygon to start the Triangle Fan looked more intuitive to me when I first implemented this method. I guess this was because when you use an internal point to start, the resulting set of triangles looks like fan indeed. However, as pointed out by Slavomir Kaslev, the Triangle Fan can be started from any corner of the polygon. Link: https://lore.kernel.org/linux-trace-devel/20201211150756.577366-30-y.karadz@gmail.com Suggested-by: Slavomir Kaslev <kaslevs@vmware.com> Signed-off-by: Yordan Karadzhov (VMware) <y.karadz@gmail.com> Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
-rw-r--r--src/libkshark-plot.c11
1 files changed, 1 insertions, 10 deletions
diff --git a/src/libkshark-plot.c b/src/libkshark-plot.c
index 597e5c25..5fdf4ca1 100644
--- a/src/libkshark-plot.c
+++ b/src/libkshark-plot.c
@@ -201,18 +201,9 @@ void ksplot_draw_polygon(const struct ksplot_point *points,
return;
}
- /* Obtain a point inside the surface of the polygon. */
- struct ksplot_point in_point;
- in_point.x = (points[0].x + points[2].x) / 2;
- in_point.y = (points[0].y + points[2].y) / 2;
-
- /*
- * Draw a Triangle Fan using the internal point as a central
- * vertex.
- */
+ /* Draw a Triangle Fan. */
glBegin(GL_TRIANGLE_FAN);
glColor3ub(col->red, col->green, col->blue);
- glVertex2i(in_point.x, in_point.y);
for (size_t i = 0; i < n_points; ++i)
glVertex2i(points[i].x, points[i].y);