Bonjour,
Je maitrise le C sur système embarqué et j'aimerai faire un projet personnel qui consiste à faire un logiciel de dessin vectoriel.
Ce que je voudrai :
- pouvoir gérer plusieurs dizaine de millier d'éléments
- pourvoir gérer des groupes d'objets répartis sur plusieurs layers
- pas besoin de gérer des dégradés
- pas besoin de gérer des courbes de Béziers : je veux gérer uniquement des segments, des arcs et des formes fermées avec faites de droites et de d'arcs de cercles.
- Afficher des treenodes pour pour sélectionner les différents éléments.
- Afficher des barres d'outils (pas forcément configurables par l’utilisateur)
- Pourvoir gérer une distance de positionnement minimale entre différents éléments (ex : interdiction de pouvoir tracer une ligne trop près de certains objets).
- Pouvoir faire du undo/redo
- Charger/enregistrer fichiers de configuration au format txt. Dans le fichiers de configuration, il y aura la description d'objets avec leurs propriétés customisables (liste des propriétés non figées) et leur position.
- Pouvoir gérer des BDD accessibles en réseau local permettant de créer des bibliothèques d'objets
- Que le logiciel soit fluide (traçage, sélection, modification, zoom, déplacement de groupe d'objets ...)
- Interface graphique dans l'air du temps (que logiciel ne fasse pas vieillot)
- Le logiciel doit tourner au minimum sous Windows (mais si portabilité possible facilement sous linux, ça pourrait être un plus) et qu'il soit facilement maintenable dans le temps (pas/peu de modifications pour les futurs versions de Windows)
J'ai aussi quelques bases en Java, HTML/javascript/AJAX/SQL/PHP.
Je pensais donc m'orienter sur l'un des ses langages : C, C++, java.
=> je n'ai jamais fait de C++ mais je suppose que le passage de C à C++ se fait facilement surtout que j'ai quelques bases en langage objets
Je ne veux utiliser que des libaries libres de droit d'utilisation (même en utilisation commerciale).
=> Ce qui me semble critique c'est d'arriver à gérer les zoom tout en gardant de bonnes performances.
Quel langage me conseillez-vous d'utiliser ? Et quelles libraries ?
=> java me semblait pas mal (car il me semble que je trouverai plus facilement des libraries pour me faciliter le travaille) mais est-ce qu'au niveau des performances, je ne risque pas d'être limité ?
Merci d'avance.
Partager