In this article, we will see how we can draw line on window in PYGLET module in python. Pyglet is easy to use but powerful library for developing visually rich GUI applications like games, multimedia etc. A window is a “heavyweight” object occupying operating system resources. Windows may appear as floating regions or can be set to fill an entire screen (fullscreen). Spectral line shape describes the form of a feature, observed in spectroscopy, corresponding to an energy change in an atom, molecule or ion. Ideal line shapes include Lorentzian, Gaussian and Voigt functions, whose parameters are the line position, maximum height and half-width. Line is drawn with the help of shapes module in pyglet.
We can create a window with the help of command given below
# creating a window
window = pyglet.window.Window(width, height, title)
In order to create window we use Line method with pyglet.shapes
Syntax : shapes.Line(co_x1, co_y1, co_x2, co_y2, width, color = (50, 225, 30), batch=batch)
Argument : It takes starting and end position in form of pair of two integers, width of line, color of line and last is batch object
Return : It returns Line object
Below is the implementation
Python3
import pyglet
from pyglet import shapes
width = 500
height = 500
title = "Geeksforgeeks"
window = pyglet.window.Window(width, height, title)
batch = pyglet.graphics.Batch()
co_x1 = 150
co_y1 = 150
co_x2 = 350
co_y2 = 350
width = 10
color = ( 50 , 225 , 30 )
line1 = shapes.Line(co_x1, co_y1, co_x2, co_y2, width, color = ( 50 , 225 , 30 ), batch = batch)
line1.opacity = 250
line2 = shapes.Line( 50 , 250 , 400 , 250 , 30 , color = ( 250 , 30 , 30 ), batch = batch)
line2.opacity = 100
@window .event
def on_draw():
window.clear()
batch.draw()
pyglet.app.run()
|
Output :
