Files
amazing/test_mlx.py
T

47 lines
1.4 KiB
Python

from mlx import Mlx
class App:
def __init__(self):
self.mlx = Mlx()
self.mlx_ptr = self.mlx.mlx_init()
self.win_ptr = self.mlx.mlx_new_window(self.mlx_ptr, 800, 600, "Image")
self.img_ptr = self.mlx.mlx_new_image(self.mlx_ptr, 800, 600)
(self.data,
self.bpp,
self.size_line,
self.endian) = self.mlx.mlx_get_data_addr(self.img_ptr)
for y in range(300):
for x in range(800):
index = y * self.size_line + x * (self.bpp // 8)
self.data[index] = 255
self.data[index + 1] = 50
self.data[index + 2] = 120
self.data[index + 3] = 100
for y in range(300, 600):
for x in range(800):
index = y * self.size_line + x * (self.bpp // 8)
self.data[index] = 150
self.data[index + 1] = 50
self.data[index + 2] = 120
self.data[index + 3] = 100
# Hook fermeture fenêtre
self.mlx.mlx_hook(self.win_ptr, 33, 0, self.close_window, self)
self.mlx.mlx_put_image_to_window(self.mlx_ptr, self.win_ptr,
self.img_ptr, 0, 0)
def close_window(self, poop):
print("Closing window")
self.mlx.mlx_loop_exit(self.mlx_ptr)
app = App()
app.mlx.mlx_loop(app.mlx_ptr)