Overblog
Suivre ce blog Administration + Créer mon blog
11 mars 2022 5 11 /03 /mars /2022 04:12
Nébuleuses de synthèse avec Python ou une NFT gratuite!

   Et voici un programme typique années '80s: pas orienté objet du tout et programme graphique de base initialement codé (programmé on disait à l'époque) en Gw-Basic et Q-Basic (QBasic, Quick Basic). J'avais envie de le remettre au goût du jour sous des machines Windows ne comportant plus le MS-DOS (et donc les langages Basic cités ici), et qui a l'avantage de fonctionner également sous Linux et Mac-OS (langage Python, Python 3 ici, oblige).

   Un générateur de nébuleuses simple à utiliser... Aussi un générateur de NFT (oeuvres d'art numériques) gratuites, license CC (BY, NC, SA) = Creative Commons (By Yourself, Non Commercial, Share Alike) oblige...

   Voici le fichier .py (explications par après):

Version revue du 16/03/2022

   En réalisant ce programme récréatif graphique, ce qui m'a surtout plu est de découvrir deux codes nouveaux. En effet, si le passage du turtle en fond noir est expliqué dans le livre de démarrage du Raspberry Pi 400, j'ai découvert deux nouveaux paramètres de turtle.

   D'abord cacher la "tortue" (ou triangle pointeur) par pen(shown=False), ensuite accélérer l'exécution d'un dessin sous turtle au maximum possible par delay(0).

Partager cet article
Repost0
4 mars 2022 5 04 /03 /mars /2022 20:34
Le skateboard, un des Arts de la Rue ou Arts Urbains...
Photo de adrien_vj sur Unsplash

   Alors, ma rue est fréquentée très assidûment par des skateboarders, avec des réactions malheureusement pas toujours très positives, telle celle d'une femme criant contre l'un d'eux qui passait la nuit. Alors certes le skateboard ça fait un peu plus de bruit que le vélo, effet des roues sur le bitume oblige, mais personnellement jamais je n'ai été réveillé par un skateboarder ou une skateboardeuse quand je dormais. Je ne les entends que quand je suis éveillé.

   Ce qui est magnifique avec le skateboard, c'est que c'est l'un des derniers "arts de la rue"; avec le breakdance bien entendu. Ça demande clairement une très bonne condition physique, mais comparé au graffiti, graphe, tags, c'est l'un des derniers arts vraiment de la rue. Car maintenant les graphes s'exposent dans les musées et se vendent 100.000 €! Quand un Art est enfermé dans une boîte, ce n'est plus un art de la rue ou un art urbain de facto... C'est un art tout court.

   Je parle du graffiti car je connais bien la loi du genre. Les graffiteurs actuels n'opèrent en général que dans des quartiers paumés qui ne sont clairement pas les destinataires du message censé être passé, par des gosses de bourgeois (en général) qui veulent se la jouer «nous on est des durs»; et de facto ne risquent que les travaux d'intérêt généraux.

   Perso j'ai graffité un message on ne peut plus clair, certes, mais dans un quartier bourgeois et en pleine "Zone Neutre" comme on dit à Bruxelles. Tarif? Un an de prison ferme! Heureusement je n'ai pris qu'une semaine car j'avais fait opposition au jugement où je n'étais pas présent. Mais au final ça s'est soldé par une énorme amende et un an de prison avec sursis! La même peine que si j'avais roulé saoul et tué quelqu'un...

   C'est là que tu vois que le graphe ou le graffiti de quelqu'un ne dérange pas et au contraire va dans le sens bien-pensant: quand comme Banksy ça se vend entre 10.000 et 100.000 € ou que tu ne risques que les travaux d'intérêts généraux.

   Donc le skateboard, bien que pas interdit en soi, reste le dernier art de la rue. Un art sportif, et même s'il y a des compétitions officielles l'entraînement se fait en milieu urbain!

   Bref, mes pensées aux skateboarders et skateboardeuses...

Partager cet article
Repost0
7 février 2022 1 07 /02 /février /2022 12:31

   En fin d'article un ajout du 07 février 2022 (l'article original datant du 09 janvier 2022) sur pourquoi 8 mois sans mixes de ma part?

   Alors je commence l'année 2022 comme j'ai terminé l'année 2021 mais en mode beaucoup plus joyeux. En effet, c'est avec un corps de lyrics dont 1/3 (un tiers) avait été imaginé l'année passée que je débute cette année.

   C'est en écoutant le DJ-Mix de Henri PFR ce samedi soir sur la radio MNM (Music And More, 88.3 FM à Bruxelles) que j'ai eu l'idée d'utiliser un sample du titre de Depeche Mode utilisé ici.

   Bref, en Free Download et CC (Creative Commons):

   Et mon gobelet de musicien-mendiant au coin de la rue numérique...

   Enfin, oui pourquoi huit mois sans aucun mixes? Réponse dans cette vidéo de 10 minutes où il sera question non-seulement de ne pas se cloisonner musicalement mais également culturellement puisque je cite une radio francophone (Classic 21) et une autre néerlandophone (MNM); tout en oubliant de citer Q-Downtown...

   Vidéo réalisée avec mon Raspberry Pi 400 (et Raspberry Pi OS, Raspbian, Debian "Bullseye" 32 bits) Linux, une webcam classique (ici Logitech) et le très bon logiciel (mais qui bogue un peu dans cette version et totalement sous Windows) Webcamoid.

Partager cet article
Repost0
26 janvier 2022 3 26 /01 /janvier /2022 07:20

   Alors, ce 26 Janvier 2022 je vais enfin proposer ce module amélioré dans le blog indiqué dans l'article; ce que je n'avais pas fait primitivement. Une note: ce module, cette classe d'objet score, est dans le fichier proposé ici en UTF-8 et donc ne fonctionne pas sous Visual Studio Code tant qu'on ne l'a pas transformé en texte ASCII...

   À voir aussi en bas d'article un nouveau tutoriel vidéo sur l'usage du module (d'ici une heure: 07:40 AM).

Un module version avec classe de gestion et sauvegarde de scores d'un jeu sous Python

   Qui n'a pas déjà été triste après avoir joué à un jeu, qu'il soit programmé («codé» on dit de nos jours) en C/C++ ou en Python tant module Pygame (le plus courant) que Tkinter (tkinter depuis Python 3), de ne pas avoir la possibilité d'enregistrer son score et son pseudo? À moi, je vous l'avoue, ça m'est arrivé plus d'une fois; au point de me motiver à créer des lignes de code pour gérer un fichier contenant les dix meilleurs scores et le pseudo correspondant des joueurs.

   D'abord présenté sur le blog de www.developpez.net en version très simple, voici ici les lignes de code pouvant soit être utilisées comme module, soit, plus sûr, comme classe d'objet score à ajouter (copier-coller ou bien renommer le fichier et inclure la classe) au début de chaque jeu avant toute autres classes et en tout cas avant le programme principal du jeu lui-même.

   Bref voici le module "scoremanage":

   Évidemment ça s'adresse à ceux qui, comme moi, dès leur jeunesse ont rêvé de programmer eux-mêmes leur propre jeu. Il est clair que lorsqu'on programme un jeu, la base est d'avoir une sauvegarde et un tri des scores obtenus par des joueurs. Vous pourrez me répondre que c'est plus satisfaisant si on programme la classe de gestion de score "soi-même".

   Mais, justement, la logique de l'Open Source n'est pas «do it yourself» mais bien «do it with together», «faites le ensemble»; ce qui compte est de comprendre les lignes de codes et, pourquoi pas?, de savoir améliorer la solution proposée en imaginant d'autres usages ou besoins.

   Sinon autant dire que pour un jeu utilisant le module pygame, «autant reprogrammer soi-même l'ensemble de ce module car cela apporterait plus de satisfaction personnelle»...

   Bref:

   Plusieurs manières de l'utiliser, j'explique ici la plus flexible pour un jeu relativement complexe (2 joueurs):

#D'abord soit l'import du module soit sa copie

from scoremanage import *

#Ensuite définir l'objet

gs=Scoremanage("Zorro_sco")

#où gs n'est qu'un exemple et "Zorro_sco" le nom du fichier

#qui contient la liste des scores pour un jeu.

#Ensuite des variables contiennent les deux scores et noms des joueurs

pseudo1,score1="",1250 #ici le joueur n'a pas entré son pseudo

pseudo2,score2="optimum",3500

#Maintenant on écrit, un par un, les scores

gs.score,gs.gamer=score1,pseudo1

gs.addsco()

gs.score,gs.gamer=score2,pseudo2

gs.addsco()

#La lecture des scores renvoie une liste

scores=gs.lirsco()

#On peut réinitialiser les scores par:

gs.inisco()

#C'est tout!

   Et comme exemple concret d'utilisation un petit jeu, un classique des années fin 1960 - mi 1970 (60's - 70's):

Partager cet article
Repost0
13 décembre 2021 1 13 /12 /décembre /2021 05:54
Programme graphique qui a demandé du temps pour la finition...

   J'ajoute ici une petite modification concernant mon programme graphique "Rosaces 3.3" en "Rosaces 3.3b". Il s'agit d'améliorations de la lisibilité du programme et une fluidification des lignes de codes dans leur succession d'exécution. On pourra comparer avec le programme initial toujours présent plus bas.

   Donc, d'abord le fichier Python 3 (.py) puis sa version texte Unicode pour pouvoir comparer...

Rosaces 3.3b le programme Python 3 retravaillé en 2021.

Le fichier texte Unicode du programme pour affichage direct.

   Alors, si je suis resté au moins trois mois (quatre maintenant) sans mixes c'est que j'étais surtout pris par la programmation. D'abord programmation d'une fusion entre mes programmes graphiques de polygones et d'étoiles, fusion que je présenterai en bas d'article.

   Ensuite un programme rapide à coder, mais dont la résolution de la fluidification "comme dans la vidéo" de l'inventeur du concept a été très longue...

   À ce propos, voici la vidéo de l'inventeur en question; notez bien que son programme n'est pas le même que le miens d'autant que le code-source de son programme n'est pas public.

   Bref ça m'a donné envie de développer mon propre programme basé exactement sur le même concept, en langage Python bien entendu, le voici suivi de son code source en format texte .txt.

   Enfin, pour la fusion de polygones et étoiles; l'un avec le module Turtle, l'autre avec Tkinter. On préfèrera le premier car il laisse voir se dessiner l'étoile dans le polygone inscrit dans un cercle "comme le ferait un humain"; mais la seconde version, plus rapide et avec présence du cercle, n'est pas mal non plus...

Programme graphique qui a demandé du temps pour la finition...
Programme graphique qui a demandé du temps pour la finition...
Partager cet article
Repost0
4 décembre 2021 6 04 /12 /décembre /2021 00:42

Alors, après une absence de six mois (mon dernier mixe et ma dernière piste son datent de tout début Septembre 2020), absence que j'ai expliquée sur Facebook: une forme d'apathie due au confinement sur laquelle je ne reviendrai pas ici, je ne suis toujours pas mort!

   Je reviens donc avec un mix Funk et Funky House zéro Disco. J'insère ici la playlist (tracklist) au format html, j'espère que vous saurez la lire, sinon je préparerai bientôt une version PDF.

   Enfin, pour finir (redondance), je replace ici après ce Funk That Sound #13 (4 téléchargements dès le premier jour de mise-en-ligne ce 14 Mars 2021, ce qui est inhabituel et montre le besoin qu'il y avait à écouter ce genre de sonorités) le Funk That Sound #7 qui comprend quelques pistes identiques mais bien plus travaillées dans un sens Funky-beat et qui ne peut que plaire à ceux qui ont aimé le #13.

Partager cet article
Repost0
9 septembre 2021 4 09 /09 /septembre /2021 08:59

   Je sais que pour programmer des jeux en langage Python, la préférence se porte sur le module "pygame" mais comme il n'est pour l'instant pas disponible en 64 bits, que par ailleurs il n'est pas forcément préinstallé avec le téléchargement par défaut d'un IDE (EDI) Python, et qu'ensuite je ne le maîtrise pas à 100%; j'ai voulu utiliser le module universel tous OS (32 et 64 bits) de Python: tkinter.

   Un petit et bête jeu qui m'aura demandé trois jours pour résoudre le problème suivant: comment remplacer une photo par une seconde photo dans le canevas (Canvas)? Puis un quatrième jour pour la finition, sans compter les nuits (deux) que j'ai passées dessus.

   Bref, tête dans les étoiles, nous rêverons donc, comme Elon Musk, de conquête spatiale et de Mars...

   Dossier zippé et gratuit ici; il contient le programme et deux photos en format GIF, pas de son pour ce programme malheureusement ou tant mieux je sais pas:

Partager cet article
Repost0

Présentation

  • : Town Ground anc. Igor Gorovitch
  • : Créations électroniques d'un dissident du numérique bien intégré. Musique style 90's et (un peu) programmation style années 1980 (80's). Les eighties et nineties au cœur.
  • Contact

Recherche

Pages