How to draw shapes on a PyGlet window

share link

by Abdul Rawoof A R dot icon Updated: Aug 24, 2023

technology logo
technology logo

Solution Kit Solution Kit  

Pyglet is a cross-platform multimedia library for the Python programming language. It's used for creating games, multimedia applications, and interactive graphical user interfaces (GUIs). Pyglet provides a simple and intuitive way to handle multimedia elements.   

Key features and uses of Pyglet include:   

  • Windowing and Input Handling: Creating windows to display graphics and user interfaces. It provides functionality for handling mouse and keyboard input events.   
  • Graphics: It helps create and manipulate graphics. It supports hardware-accelerated rendering for smoother graphics performance.   
  • Multimedia Playback: Pyglet can play audio files and video files. It is useful for creating multimedia applications, games with sound effects, and music.   
  • OpenGL Integration: Pyglet is built on top of OpenGL. It is a popular graphics library. It enables you to harness the power of hardware-accelerated graphics for improved performance.   
  • Animations: Pyglet supports animations through frame-based rendering. It is suitable for creating sprite-based games and interactive animations.   
  • Event Handling: The library includes event-driven programming features. It allows you to respond to mouse clicks and window resizes.   
  • Threading and Concurrency: Pyglet provides support for multi-threading. It allows you to run different tasks while keeping the user interface responsive.   
  • Integration with GUI Toolkits: It can be well-integrated with GUI toolkits like PyQT.   
  • Cross-Platform: Pyglet is well-designed to work on many platforms, including Windows and macOS.  


Pygame provides geometry functions to draw simple shapes to the surface. Use the lower-level graphics API to make detailed shapes instead of pre-made ones. Being written in pure Python, it also works on other Python interpreters. OpenGL primitives make the shapes, and they perform well when drawn together. We provide convenient methods for positioning, changing color and opacity, and rotation. Every developer should try to make a game to learn about game development concepts.   


Here is an example of how to draw shapes on a PyGlet window:   

Fig: Preview of the output that you will get on running this code from your IDE.


In this solution we are using PyGlet library.


Follow the steps carefully to get the output easily.

  1. Install PyCharm Community Edition on your computer.
  2. Open the terminal and install the required libraries with the following commands.
  3. Install PyGlet - pip install pyglet.
  4. Create a new Python file(e.g.
  5. Copy the snippet using the 'copy' button and paste it into that file.
  6. Run the file using the run button.

I hope you found this useful. I have added the link to dependent libraries, and version information in the following sections.

I found this code snippet by searching for 'pyglet displays shapes only after using additional draw command' in kandi. You can try any such use case!

Environment Tested

I tested this solution in the following versions. Be mindful of changes when working with other versions.

  1. The solution is created in PyCharm 2022.3.3.
  2. The solution is tested on Python 3.9.7.
  3. PyGlet version 2.0.5.

Using this solution, we are able to draw shapes on a PyGlet window with simple steps. This process also facilitates an easy, hassle-free method to create a hands-on working version of code which would help us to draw shapes on a PyGlet window.

Dependent Library

pygletby pyglet

Python doticonstar image 1503 doticonVersion:v2.0.7doticon
License: Permissive (BSD-3-Clause)

pyglet is a cross-platform windowing and multimedia library for Python, for developing games and other visually rich applications.


            pygletby pyglet

            Python doticon star image 1503 doticonVersion:v2.0.7doticon License: Permissive (BSD-3-Clause)

            pyglet is a cross-platform windowing and multimedia library for Python, for developing games and other visually rich applications.

                      You can also search for any dependent libraries on kandi like 'PyGlet'.


                      1. For any support on kandi solution kits, please use the chat
                      2. For further learning resources, visit the Open Weaver Community learning page.


                      1. How do you draw 2D shapes with pyglet?   

                      In the Pyglet library, you can create and draw 2D shapes using the module. Here's a basic guide on how to draw common 2D shapes using Pyglet:   

                      • Install Pyglet   
                      • Import Required Modules   
                      • Create a Window   
                      • Define Drawing Function   
                      • Draw 2D Shapes   
                      • Run the Application   


                      2. What are the advantages to draw a circle with pyglet?   

                      • Simplicity and Ease of Use   
                      • Cross-Platform Compatibility   
                      • Interactive Graphics   
                      • OpenGL Integration   
                      • Animations and Multimedia   
                      • Community and Documentation   


                      3. What can I do with a game library like Pyglet for developing games?   

                      Pyglet is suitable for developing 2D games if you want to create more complex 3D games. You can explore libraries or frameworks like Unity, Unreal Engine, or Godot.   

                      Pyglet is a helpful tool for learning to make games and generating ideas. If you know Python, this tool is great for making 2D games.   


                      4. How do I set an outer radius when drawing a circle in Pyglet?   

                      Pyglet helps you draw a circle using the library, which is part of the Pyglet graphics library. You can use the OpenGL rendering functions provided by to draw a circle with an outer radius.   


                      5. Where is the third X coordinate located when plotting a circle on Pyglet?   

                      When plotting a circle using Pyglet, the third X coordinate is not specified. A circle has a center point and radius, which define it as a two-dimensional shape. In a two-dimensional space (2D), the center coordinates (x, y) and a radius (r) represent a circle.  

                      See similar Kits and Libraries