drawing polygon on TFT

I am wondering whether it is possible with a one-line instruction under the the MCUFRIEND_kbv or Adafruit_GFX libraries to create on my 320x480 TFT display a filled polygon, let's say a pentagram? I am thinking of an instruction that might be something like "tft.drawPolygon (coordinates, edge thickness, edge color, fill color)".
With my limited experience drawing such a thing may be performed by drawing three filled triangles superimposed by five line segments with a different color. Could that be done more elegantly with one instruction?

You can build any graphic that you want from the GFX primitives. Just write the appropriate function.
A filled polygon can be made from N filled triangles.

Some things require a lot of calculations. Filled triangles are a case in point.
The drawlPolygon() function is called in one statement. Obviously with the appropriate number of arguments e.g. coordinates, edge thickness, edge color, fill color, number of edges.

Yes, you can create a superclass that inherits from MCUFRIEND_kbv (which has inherited from Adafruit_GFX and Print)
But there is little advantage in using a drawlPolygon() function or a new class tft.drawlPolygon() method.

Incidentally, the CodeVision C compiler graphics library can do filled polygons and even filled arbitrary shapes.
However, some algorithms require a read-write display. Ok for many Uno Shields. Most Mega Shields are write-only.


Thanks, David!
I noted after digging deeper that there exists a thread starting Augts 21, 2015 about drawing polygons in the 'Programming Questions" section of this forum:

That helps a lot and it is a nice starting point to create some nice and colorful polygons!