diff options
author | Yordan Karadzhov (VMware) <y.karadz@gmail.com> | 2020-12-11 17:07:53 +0200 |
---|---|---|
committer | Steven Rostedt (VMware) <rostedt@goodmis.org> | 2020-12-21 19:13:16 -0500 |
commit | e143a886b344ef3f9434c278f82db3b2539cb704 (patch) | |
tree | 032687229a5c7acb99d86759bf957a6701424c98 | |
parent | df4b7308913d80af145d8725adfac5b9a61fe0ab (diff) | |
download | kernel-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.c | 11 |
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); |