% Projet : générer des fichiers SVG
-
Créer différentes classes pour les primitives de base (rectangle, cercle/ellipse) permettant de générer un SVG avec des attributs simples (position, couleur, éventuellement bordure)
-
Générer un SVG avec plusieurs primitives graphiques
-
Avoir la possibilité de réaliser des opérations complexes (mettre en noir et blanc, inverser les couleurs, optimiser la zone d'affichage, ...)
-
Utiliser des primitives plus complexes (groupes, ...)
-
Commencer par un rectangle ou un cercle uniquement
-
Créer un fichier de classe, y mettre les attributs strictement nécessaires
-
Définir toXML() qui permet de renvoyer la chaîne de caractères XML
-
Quand ça marche, complexifier un peu la classe
-
Une méthode pour définir la position et une pour translater
-
Une méthode pour gérer la rotation
-
Méthodes pour changer certains paramètres (couleur, bordures...)
Ressources (fichiers ici)
-
Un squelette de fonction main à personnaliser (App.java)
-
Une classe File pour l'écriture dans les fichiers
-
Un script run
-
Une librairie XML pour ceux qui ont un niveau avancé (XML.java et Element.java)
Si le script ne s'exécute pas en raison d'un problème de droits d'exécution
sudo chmod u+x run
-
Avant d'implémenter une nouvelle fonction dans votre classe, testez là "manuellement"
-
Créez un fichier ".xml", mettez-y le code de votre figure, renommez en SVG pour visualiser le résultat
-
Inspirez-vous du tutoriel Mozilla
-
Ne pas se préoccuper des indentations
-
En cas de doute, inspectez votre sortie avec un navigateur Web
Si vos dessins ont des problèmes de mise à l'échelle automatique dans Repl.it :
-
Vérifier en ouvrant le fichier dans le navigateur
-
Ajuster ViewBox, width et height (attributs du noeud svg) pour contrôler finement les échelles et unités (voir cette page du tutoriel)