Bonjour,

Je vous propose un nouvel élément à utiliser : Défi Pascal 2014 "screensaver" - Projet de joreveur : Galaxie

Défi 2014 - Projet « Galaxie » par Joreveur - version 0.1



Objectif

Comme le sujet est libre, l'écran de veille que je compte réaliser aura comme vocation :

  • d'être agréable à regarder ;
  • à faire réfléchir avec des citations affichées.

Méthode

  • animation simple d'objet rentrant en collision sur le thème Galaxie ;
  • affichage d'une citation pouvant changer à chaque collision.

Exclusion

  • il n'aura pas pour but de diminuer la consomation electrique ;
  • il n'aura pas pour but de réduire l'usure de l'écran (à l'époque des LCD qui sont les plus implantés ce n'est pas essentiel).

Outils retenus

Lazarus (et FreePascal).
J'ai essayé de voir en Pascal « pur » mais je n'ai pas assez de recul

Environnement

Développement sous Linux ou Wine.
Travaillant sous Linux Puppy Tahr 6.02, la réalisation d'un écran de veille sous cet environnement me semble peu envisageable. En effet le seul paquet que je connaisse ne permet pas de rajouter de nouveaux écrans. Et l'environnement de bureau n'est ni Gnome ni KDE, ni autre gestionnaire X mais JWM...
De ce fait je décide de le concevoir pour le système d'exploitation Windows 32 Bits et d'utiliser Wine pour les tests.
A titre de recette définitive j’utiliserai :


Documentation

La documentation est faite sous LibreOffice avec exportation au format PDF pour être lisible dans un format reconnu de tous les systèmes d'exploitation.

Réalisation

Le principe est assez simple, voire sommaire…

  • ne connaissant rien au principe des collisions, j'ai appliqué la méthode que si l'axe entre les planètes était plus petit ou égal au rayon de chaque alors je repoussais les « objets » dans des directions opposées. Je calcule cela avec le théorème de Pythagore…
  • pour bord c'est un peu plus simple et ne mérite pas plus d'explications (voir le code source) ;
  • au départ, j'avais prévu de mettre les citations dans un fichier externe mais cela n'a pas été fait et seulement quelques citations sont directement dans le code source. S’il y a une prochaine version c'est envisageable. Pour connaître la version il faut mettre la souris sur mars…
  • idem je pensais que des GIF animés seraient jolis, mais ça ne fonctionne pas.


Livraison et mode d'emploi

Les fichiers sources sont livrés sous Lazarus dans le menu Executer sous menu créer puis compiler puis exécuter.
Pour Windows un fichier copygala.bat permet de renommer copier project1.exe en galaxie.scr
Ensuite, pour l'installation sous Windows il suffit de faire un clic droit sur galaxie.scr et d'installer.

NB : Pour rappel la prévisualisation en mini fenêtre n'est pas opérationnel.

Remerciements - conclusion

J'ai eu beaucoup de problèmes dès le départ pour afficher les citations et j'ai dû changer ma méthode de faire en contournant le problème. Merci au forum pour l'aide apportée sur ce sujet.
Je remercie l'équipe de developpez.net, les contributeurs, qui depuis des années m'aident, par les FAQ, des tutoriels et le forum Pascal et pour toutes les solutions qui me sont données.
Au travers de ce projet même s'il est loin d'être abouti, j'ai découvert que l'on peut apprendre beaucoup de choses concernant ce langage qui est Pascal, qui est un langage selon moi, formidable !
Programmer et pendant un temps de pause, avoir la tête quelque peu dans les étoiles pour nous faire méditer sur la beauté du ciel et de la vie tel est la finalité de cet écran de veille.

Joreveur

Qu'en pensez-vous ?