GENIUS est une couche logicielle basée sur Swing, 100% codée en Java (pas de génération de code) permettant de créer plus facilement des IHM pour outils scientifiques quelle que soit le type de plateforme.
En effet, dans le monde Java, l’appel à des couches logicielles plus basiques telles que Swing peut devenir relativement complexe à utiliser et à maintenir parce qu’elles restent à relativement bas niveau (même si elles permettent de faire beaucoup de choses). De plus, des IHM pour des outils de dynamique du vol (ou plus généralement des outils scientifiques) ont la plupart du temps besoin :
- De saisir des données numériques
- De lire /écrire ces données dans des fichiers
- D’exécuter des calculs sur la base de ces données
- De visualiser des résultats
Aussi les principaux avantages de GENIUS sont :
- D’avoir une approche simplifiée en particulier sur la gestion des évènements (AVANT/APRES)
- De gérer efficacement des affichages conditionnels
- De proposer de manière intégrée la gestion des fichiers de données au format XML
- De gérer les unités
- De gérer les lancements de calculs quel que soit l’OS (grâce à Java).
GENIUS bénéficie également du retour d’expérience des outils utilisés au CNES depuis plusieurs dizaines d’années en particulier dans le domaine opérationnel. Il dispose ainsi de fonctionnalités très intéressantes comme :
- La gestion des domaines de validité d’un paramètre et la gestion d’erreur sur un ensemble de données
- La gestion de valeurs par défaut, de référence ou de valeurs modifiées
- Le « copier/coller » de widgets
- Etc.
GENIUS est actuellement utilisé en interne CNES pour le développement de la plupart des outils experts comme PSIMU ainsi que d’autres outils à vocation plus opérationnelle comme ELECTRA.
GENIUS est fourni en mode Open Source sous licence Apache 2.0. La Java doc est accessible via son Wiki.
Les versions disponibles sur ce site ne commencent qu’à partir de la V1.9.1. Pour obtenir une version plus ancienne, n’hésitez pas à nous contacter.
Pour être utilisé, il faut aussi se procurer les produits suivants :
- Miglayout 4.2 (http://www.miglayout.com/)
- Jdom 1.1.2 (http://www.jdom.org/)
- Gettext-commons 0.9.8 (http://xnap-commons.sourceforge.net/gettext-commons/)
- JFreeChart 1.0.19 (http://www.jfree.org/jfreechart/)
- commons-io 2.4 (https://commons.apache.org/proper/commons-io/)
- sqlite-jdbc-3.15.1 (https://www.sqlite.org/)
- exp4j 0.4.8 (https://www.objecthunter.net/exp4j/)
GENIUS
Thématique
Type de licence
Open source
Langage de programmation
Java ≥ 1.8
Système d'exploitation
Windows, Linux
Documentation
Documents disponibles
Release note (929.55 Ko)Information sur la documentation
GENIUS possède son propre Wiki (incluant des tutoriaux) à l'adresse suivante : https://genius.cnes.fr
Une question à propos de GENIUS ?
N’hésitez pas à nous contacter ! Nous sommes là pour vous aider.
Contact