Des images en C++
Créez votre Paint automatique
Étape 1 : Mettre en place votre environnement
L'idée de ce projet sera de vous faire réaliser une sorte de Paint automatique, avec les fonctionnalités qui vous intéressent dedans. Pour cela, la première étape est d'utiliser les outils adaptées : IDE, lecteur d'image, librairie... La partie IDE et lecteur d'image ne devrait pas cause de problèmes. Cependant, la partie librairie peut être un petit peu plus complexe. Vous pouvez aller faire vos propres recherches pour trouver la librairie qui vous convient. Cependant, nous vous conseillons notre propre librairie d'image : SCLS Image "Michelangelo". Elle a l'avantage d'être développée directement par nous, dans la continuité de tous les cours ici présent. Nous l'utiliserons aussi ici, dans le cours. Le premier défi est donc d'installer et de configurer la librairie, pour que vous puissiez l'utiliser directement dans votre programme.
Dés que cette étape (la plus complexe) est réalisée, vous devriez vous poser et réflechir aux fonctionnalité de votre programme. Cette étape, qui semble ennuyante et inutile, vous permettra de ne pas foncer directement dans un mur, avec des idées farfelues / irréalisables. Pour cela, il vous faut commencer à lire la documentation de la librairie, pour savoir ce que vous pourrez faire avec (ou ne pas faire). Dés que ceci est fait, créer votre projet via l'IDE, et commencez le développement.
Cette étape nécessite les cours I - 1 sur les bases du C++ et II - 1 sur la gestion de projets C++.
Étape 2 : Dessiner sur l'image
En lisant la documentation de la librairie, vous trouverez différentes manières de modifier une image. Commencez à tenter des choses, et enregistrez les avec "save_png()" pour voir le résultat. Au début, vous pouvez commencer par des formes simples, comme des tests de Rorschach géométriques. Vous pouvez même créer des patterns de plus en plus complexes, via des fonctions, des boucles et des variables, et en les utilisant comme bon vous semble. Essayez de méler votre talent logique / mathématique pour faire les plus belles choses possibles.
Vous pouvez même essayer d'utiliser la programmation orientée objet avec tout cela. Par exemple, vous pouvez créer une classe qui peut dessiner ce que vous voulez sur une certaine image, comme bon vous semble. Vous pouvez aussi vous débrouiller pour utiliser des templates, des opérateurs, des algorithmes, ou tout ce que vous voulez avec cette classe. Essayez d'être le plus créatif possible.
Selon votre créativité, cette étape ne peut nécessiter que les cours les plus simples, comme les plus avancés.
Étape 3 : Rendre son programme pratique
Au dépat, si vous voulez apprendre le C++, c'est (probablement) pour l'utiliser d'une quelconque façon. Sinon, ça peut aussi être pour élargir votre champ de compétences. Dans tous les cas, essayez de rendre votre programme utile. Vous avez besoin de trier des données à afficher ? Faites le via le C++, et afficher les sur une image. Vous avez besoin de faire un DM de mathématique ? Automatisez les tâches répétitives avec le C++, faites lui écrire la justification sur une image, et gagnez du temps grâce à ça. Je le répète, parce que c'est important, ne vous fixez pas de limites.
Quand vous êtes en capacité de manier le langage, le plus dur est souvent de trouver une idée de programme à réaliser. Ne vous inquiétez pas, voici quelques idées que vous pouvez utiliser / dériver pour réaliser un projet :
- Carte de jeu / d'informations / pokémon / tout ce qui peut être mis sur une carte
- Créateur de plateaux de jeu de société
- Fonction mathématique simple / complexes (comme l'ensemble de Mandelbrot)
- Géométrie 2D / 3D
- Schéma scientifique
Une dernière information assez importante : vous pouvez nous envoyer le code source de vos créations via notre adresse mail : astersystemelearnoff@gmail.com. A moins qu'un quelconque évènement n'arrive, nous garantissons d'essayer de lire tous vos retours. Si aucune information de license n'est ajoutée au code, nous partirons du principe qu'il est proposé sous la license GPL V3.0. Si vous le souhaitez, nous pourrons partager vos travaux ici même, pour inspirer les lecteurs.