Skip to content
sebyx31 edited this page Feb 14, 2012 · 17 revisions

Fonctionnalités du programme

Dans ce document, vous trouverez les différentes fonctionnalités du programme qui seront réalisées.

Fonctionnalités

Affichage

Il s'agit de pouvoir afficher, à partir des différentes informations (telles que longitude, latitude, l'inclinaison et la direction) reçues avec le pointeur en utilisant le protocole RS-232, une portion du ciel avec des objets célestes se situants dans cette zone.

Il y aura le nom de l'objet céleste affiché et d'autres informations seront affichées telles que la magnitude, la masse, la distance etc... L'objet sélectionné par défaut sera celui qui sera le plus au centre. L'utilisateur pourra changer d'objet céleste en cliquant sur un autre point. La possibilité de zoomer sur un objet sera présente. Si l'utilisateur le souhaite, il pourra introduire certaines données pour rechercher un objet céleste spécifique (via une barre qui s'auto-complétera). Ensuite, le système indiquera à l'aide de flèches directionnelles, la direction dans laquelle il faudra orienter le pointeur pour pointer l'objet céleste voulu. La barre d'auto-complétention aura un système de mot-clé pour faire une recherhe spécifique.

Les mot-clés seront sous la forme de "!mot ".

Les différents mot-clés présents sont :

  • id => Clé primaire de la base de données principales. Exprimé en chiffre.
  • hd => Clé primaire du catalogue de Henry Draper. Exprimé en chiffre.
  • hr => Clé primaire du catalogue Harvard Revised. Exprimé en chiffre.
  • propername => Nom propre de l'objet céleste. Exprimé en lettres.
  • ra => Ascension de l'objet céleste. Exprimé en chiffre. Exemple : 0.003213.
  • dec => Déclinaison de l'objet céleste. Exprimé en chiffres. Exemple : 1.0329332,-5.24324324
  • distance => Distance de l'objet céleste. Exprimé en année lumière. Il y a aussi la possibilité d'entrer une valeur en kilometre avec avec le suffixe "km". Exemple : 42342343km,282.4858757 (années lumière).
  • spectrum => Type de specte de l'étoile. Exprimé en lettres,chiffres et caractères spéciaux. Exemple : G2V,G8/K0III/IV,M6e-M8.5e Tc.
  • colorindex => Color index de l'objet céleste. Exprimé en chiffres. Exemple : 0.656,-0.019.

L'affichage se passera dans une zone définie dans l'interface graphique. Différents boutons et labels seront présents.

Pour plus amples informations à ce sujet, vous pourrez retrouver les maquettes des interfaces graphiques sur le lien suivant : Interface Graphique.

Tâches

  • Réaliser l'interface graphique.
  • Identifier les objets célestes de la zone.
  • Traiter les informations du pointeur reçu via le protocole RS-232.
  • Afficher les objets célestes de la zone définie.
  • Possibilité de zoomer.
  • Rechercher les informations dans une base de données.
  • Afficher le nom de l'objet céleste et éventuellement d'autres informations principales.
  • Afficher d'autres informations spécifiques (masse, distance, magnitude ... ) à partir d'un événement utilisateur.
  • Pouvoir entrer une/des information(s) pour rechercher un objet céleste.
  • Indiquer la direction à prendre pour trouver l'objet céleste spécifique.

Problèmes

  • A quoi ressemblera l'interface graphique ? -> Regarder Interface Graphique.
  • Quelle taille de zone définir pour le nombre d'objets célestes à afficher ? -> Par défaut, l'angle sera de 50°.
  • Quelle quantité d'objet à afficher ? -> On affichera tous les objets présents dans la zone. Il ne risque pas d'avoir une zone "sapin de noël" car l'univers est grand, et chaque endroit visé, il n'y aura pas forcément d'objet céleste. S'il y en a, il ne faudra pas s'attendre à en voir plus de cinq.
  • Comment représenter les objets célestes ? -> Avec des points (qui seront des petits cercles).
  • Comment fonctionne le zoom ? -> Sera sous forme de scrollbar.
    • Par échelon ?
    • Prédéfini (1 seul possibilité quand on clic) ?
  • Où "aller" pour pouvoir entrer la/les information(s) pour rechercher un objet céleste ? -> Un champ de recherche sera disponible en haut à droite et s'auto-complémentera.
  • Doit-on afficher seulement le nom de l'objet céleste ou d'autres informations doivent être affichées ? (On parle d'informations principales) -> Seul le nom sera affiché. Par défaut, il y aura les informations supplémentaires de l'objet céleste se rapprochant au plus des coordonnées reçues. Si l'utilisateur le souhaite, il pourra sélectionner un autre objet céleste et obtenir les informations.
  • Quelle(s) information(s) faut-il entrer pour rechercher un objet céleste ? -> N'importe laquelle, le système proposera tous les objets qui auront au moins un liens avec ce qui aura été entré.
  • Quelle action active le zoom ? -> Sera activé selon la scrollbar.
  • Quel algorithme de positionnement des étoiles à utiliser ? -> Le système de coordonnées écliptiques, le soleil représente la base du système. Nous utiliserons ce système car dans la base de données que nous allons exploiter, le soleil est représenté au coordonnées (0;0;0), ce qui signifie qu'il représente le centre.

Mathématique

Il s'agit de pouvoir calculer le positionnement d'un objet céleste, à partir des données reçues via le pointeur, les différentes informations nécessaires afin de pouvoir trouver l'objet correspondant aux informations ainsi que ceux se situants aux alentours.

Tâches

  • Mettre en place l'algorithme de coordonnées célestes.
  • Recevoir les informations.
  • Effectuer les calculs et renvoyer des résultats précis, il faudra faire attention aux arrondis et aux types de variables à utiliser !
  • Retourner les informations calculées

Problèmes

  • Quel algorithme utilisé parmi ceux existants ? -> Le système de coordonnées écliptiques.
  • Comment recevoir les informations ? -> Les informations seront reçues par RS-232.
  • De quelle manière pouvons-nous être sûr de la précision des résultats calculés ? -> Il faudra travailler qu'en double.
  • Comment retourner les informations ? -> Via des fonctions qui retourneront des tableaux.

Base de données

Dans cette partie, il s'agit de pouvoir effectuer des requêtes précises afin d'obtenir une liste d'objets célestes à afficher dans la portion du ciel pointée. Il s'agira d'effectuer des requêtes très précises afin de ressortir un nombre précis d'éléments se rapprochant au maximum des différentes informations données.

Tâches

  • Mettre en place la base de données
  • Recevoir les informations
  • Effectuer des requêtes avec des critères précis
  • Retourner les informations

Problèmes

  • Quelles base de données utilisée ? -> Nous utiliserons la base de données "HYG".
  • Quel SGBD utiliser ? -> SQLite.
  • Comment recevoir les informations ? -> Via des fonctions.
  • Comment retourner les informations ? -> Via des fonctions qui retourneront des tableaux.

RS-232

Dans cette partie, il s'agit de pouvoir recevoir toutes les informations du pointeur à travers un flux RS-232 continue, afin de pouvoir sélectionner les objets célestes correspondants aux informations envoyées.

Tâches

  • Récupérer les informations

Problèmes

  • Comment recevoir les informations dans le protocole RS-232 (Ordre des informations, séparateurs, ...) ? **-> Est défini pour le moment dans le document Protocole RS-232. Ensuite, il sera revu avec les membres du groupes IIE. **

###Attributions des tâches

Voici les désirs de chaque personne en ce qui concerne les tâches a effectuées :

####Diego

  • Base de données
  • Algorithme Mathématique

####Sébastien & Loris

  • RS-232
  • Simulation du pointeur d'objet céleste

####Issa & Alexandre

  • Affichage + Interface graphique

Document réalisé par Diego Antognini

Clone this wiki locally