[CI] Test ruff linter
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
kleph 2024-01-04 05:32:21 +01:00
parent d300b2279c
commit 74fe3c6a58
4 changed files with 27 additions and 20 deletions

View file

@ -7,9 +7,15 @@ steps:
commands:
- mdl .
- name: python lint
image: cytopia/pylint
- name: python lint with ruff
image: pipelinecomponents/ruff
commands:
- apk add --no-cache py3-pip
- pip3 install -r requirements.txt
- find . -type f -name "*.py" | xargs pylint
- ruff py_hypercube.py
#- name: python lint
# image: cytopia/pylint
# commands:
# - apk add --no-cache py3-pip
# - pip3 install -r requirements.txt || true
# - find . -type f -name "*.py" | xargs pylint

2
.ruff.toml Normal file
View file

@ -0,0 +1,2 @@
[lint]
ignore = ["F403", "F405"]

View file

@ -1,6 +1,6 @@
# py_hypercube
Conversion of my old 3D "hello world" that animates the 3D projeciton of an hypercube.
Conversion of my old 3D "hello world" that animates the 3D projection of an hypercube.
With more or less parameters

27
py_hypercube.py Executable file → Normal file
View file

@ -1,11 +1,10 @@
#!/usr/bin/python
# -*- coding: iso8859-15 -*-
""" projection variable d'un hypercube"""
# pour l'interaction avec le système
# pour l'interaction avec le système
# pour sqrt() et pow()
import math
# pour les nombres aléatoires
# pour les nombres aléatoires
from random import randint
import pygame as pg
@ -13,11 +12,11 @@ from pygame.locals import *
# importe tout ce qui est contenu dans le package OpenGL
from OpenGL.GL import *
# GLU première couche au dessus d'OpenGL
# GLU première couche au dessus d'OpenGL
from OpenGL.GLU import *
# couche supérieure, ressemble à la SDL, permet la gestion simplifiée de la configuration,
# des entrées (clavier souris) et des fonctions de plus haut niveau
# couche supérieure, ressemble à la SDL, permet la gestion simplifiée de la configuration,
# des entrées (clavier souris) et des fonctions de plus haut niveau
from OpenGL.GLUT import *
##
@ -54,7 +53,7 @@ frepere = 0
flagsAnim = [1, 1, 1, 1]
fullscreen = 0
## coordonnées
## coordonnées
# position
x = 0.0
y = 0.0
@ -63,10 +62,10 @@ z = 3.0
cx = 0.0
cy = 0.0
cz = 0.0
# variables pour l'animation sur les coordonnées de l'espace de projection
# variables pour l'animation sur les coordonnées de l'espace de projection
# varAnim = [ -100, -33, 33, 100 ]
# variables de départ aléatoires
# variables de départ aléatoires
varAnim = [randint(-100, 100),
randint(-100, 100),
randint(-100, 100),
@ -78,7 +77,7 @@ incAnim = [1.0, 1.0, 1.0, 1.0]
# fonction d'affichage principale
def draw():
""" fonction d'affichage principale appelée par GlutMainLoop"""
""" fonction d'affichage principale appelée par GlutMainLoop"""
global x, y, z
global cx, cy, cz
global varAnime
@ -86,7 +85,7 @@ def draw():
global incAnime
global frepere
# couleur par défaut (le fond entre autre)
# couleur par défaut (le fond entre autre)
glClearColor(0.0, 0.0, 0.0, 0.0)
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT)
@ -105,7 +104,7 @@ def draw():
# gestion du clavier
def keyboard(key):
""" gère les touches normales"""
""" gère les touches normales"""
global frepere
global flagsAnim
global fullscreen
@ -154,7 +153,7 @@ def draw_line(x1, y1, z1, x2, y2, z2):
def draw_repere():
""" dessine le repère orthogonal"""
""" dessine le repère orthogonal"""
glBegin(GL_LINES)
glColor3f(1.0, 0.0, 0.0)
glVertex2i(0, 0)
@ -189,7 +188,7 @@ def draw_hypercube(a1, b1, c1, d1):
hz = hp[p * 4 + 2]
ht = hp[p * 4 + 3]
# calcul des coordonnées projetées
# calcul des coordonnées projetées
X.append( ( b * (pow(b, 2) + pow(c, 2) + pow(d, 2)) + pow(a, 2) * b) * hx + (pow(-b, 2) * a - a * (pow(a, 2) + pow(c, 2) + pow(d, 2))) * hy + (d * (pow(a, 2) + pow(b, 2) + pow(d, 2)) + pow(c, 2) * d) * hz + (c * pow(d, 2) + c * (pow(a, 2) + pow(b, 2) + pow(c, 2))) * ht)
Y.append( (c * (pow(b, 2) + pow(c, 2) + pow(d, 2)) + pow(a, 2) * c) * hx + (-d * (pow(a, 2) + pow(c, 2) + pow(d, 2) ) - pow(b, 2) * d) * hy + (pow(-c, 2) * a-a*(pow(a, 2) + pow(b, 2) + pow(d, 2))) * hz + (-b * pow(d, 2) - b * (pow(a, 2) + pow(b, 2) + pow(c, 2))) * ht)