NanoÉdit : que faut-il ajouter ?
Urgent ++++
Les fenetres qui se baladent seules.
Dans extension.tex ajouter o_creation.c et o_raccourci.c
Si l'on affiche un plan après un objet il le cache
même s'il est derrière.
POV : auto si vue change ne marche pas (csg)
Le tar est trops gros
Super quadrique : tester la sortie POV et la normale à la super sphère.
Classes
-
Modificateur de couleur (ou amélioré le couleur existant)
incrementale (Mode : remplacement, addition, multiplication)
Par exemple "Couleur .1 0 0 Mode +" rougirait la couleur
courante à chaque application.
Ceci est possible avec la prochaine extension d'OpenGL.
-
Ajouter la qualité d'affichage dans l'état courant
et ne plus le mettre dans le paramètre de sauvegarde (const char*v)
-
Choix hauteur courante de texte. enlever la hauteur
de l'objet texte lui-même.
-
Plan (infini) définie par son repère et pouvant donner son équation.
-
Droite (infini) itou
-
Message. La fenêtre d'édition affiche le message et avec OK l'objet
s'auto-détruit.
-
Dans la classe texte, faire apparaître la boite
englobante du texte.
Codec
- codec_linefeed marche on ne sait comment...
-
codec_9uplet et codec_12uplet
pour les triangles sans et avec normale.
Les tables de ces types.
-
codec_fichier_image :
Lecture d'image GIF JPG ou comprimés.
-
Ajouter volume/surface polyédrique, simplifier ou
élimer les tables et grilles.
Types logique
-
Triangle avec et sans normal, table de triangles avec et sans normale.
Polygone et table de polygones.
-
Équation de droite
-
Méthode retournant la boite englobante.
-
Méthode retournant un polyèdre.
-
Angle
Widgets
- Widget HTML pour l'aide
- Ajouter Option cochable dans menu
- Ajouter le ``notebook''
Interface utilisateur
Dans les vues 3D :
-
Selection des objets dans une zone ecran ?
Dans le modèle :
-
L'ordre dans les menus de création : mettre un poids ?
-
Opération dans la liste des actifs ?
-
Interdire d'enlever les fils obligatoires ?
-
Menu Création : séparer Figure, Figure Calculées, Figure affichée ?
-
Si on detruit le dernier fils, on enleve le NULL, option d'objet ?
NB_ACTIFS?
-
Quand on crée un objet paramétrés, pouvoir dire de laisser
les paramètres au niveau supérieur.
Noyau
-
Changer configuration, /usr/local/bin/make.
Il faut simplifier, rendre portable.
-
Indiquer le nom du fichier/numéro de ligne dans le codec / TL / TE
-
Faire une évluation parralèle basée sur l'envoi
de message permettant
une évaluation incrémentale et permettant aussi d'enlever
une la méthode actuelle pere/fils qui marche mal pour
l'objet "operateur" car non symétrique.
-
Lors de la compilation d'un répertoire faire un fichier
table des symboles pour un lancement plus rapide ?
Cela permet aussi que les fichiers sources ne soient
pas accessibles en lecture.
-
Chargement incrémentale de NanoEdit ?
On charge les classes quand nécessaire.
-
Faut-il différencier te->trace et te->expose ?
Ou plutôt, comment faire ses propres widgets proprement.
-
Interface widget : inverser les Y de la position de la souris
cela simplifie
considérablement tous les programmes qui ont besoin
de cette position pour GL.
Ou alors stocker les 2 valeurs de y.
-
Afficher un warning si sous-classage de type logique avec
prédicat.
-
Vérifier que tout appel à u_initialiser_iw
est fait avec un champ valide (voir commentaire de
TYPES/t_widget.c).
-
Ajouter GL dans les test automatiques en batch avec "Xvfb" et "xwd"
pour comparer les images.
Dysfonctionnement
-
Evaluateur :
Si on demande un champs L_nombre_positif et que le nombre
devient négatif, c'est le champ suivant qui est pris.
Cela doit rester le même.
-
Objet vue3d :
La saisie de valeurs flottantes dans la fenêtre X est impossible.
-
Objet vue3d :
Le déplacement de plusieurs tags à la fois est problématique
si on a des numéros de tags différents dans le même objet.
Par exemple pour le segment, le bout du segment et le
tag d'étirement de segment.
-
Evaluateur :
Entier(Flottant) le flottant peut prendre des valeurs non-entières.
-
Objet plan miroir :
La lampe n'est pas à la bonne
position dans le miroir.
-
Objet modèle ? :
Le '.' ne fonctionne pas sur menu.
-
Objet xt_interface ? :
Réinitialise ne ferme la fenêtre d'aide
-
Objet xt_interface, w_recupere ? :
Couleur du background des Widgets : une couleur par champ.
comme cela on n'a pas de problème pour les passer en rouge
et revenir à la couleur normale.
-
Objet POV ? :
L'image peut dépasser la taille max !
-
Motif :
Contrairement à GTK, il faut cliquer sur Applique
après avoir déplacé une vue et pour les menus option on a pas
besoin de cliquer sur applique.
-
Motif :
Quand on déplace un tag, le déplacement continue un peu après que
l'on relache le bouton. (c'est decode événement qui est faux,
c'est corrigé pour GTK).
-
Motif/GTK :
À chaque sauvegarde la fenêtre se déplace en bas à droite....
-
u_table :
L'affichage de polygone non convexe ne marche pas (TessPoly).
-
GTK :
Un objet invalide non-actif dans l'arbre reste rouge
après être redevenu valide
-
Menu :
Les widgets menu ne sont libérés que quand aucun menu
n'est visible.
Discussions
Mise en liste GL automatiquement
C'est le fonctionnement actuel.
La mise en liste automatique GL est problématique quand on ne
sait pas quand invalider la liste. Par exemple, l'objet couleur
doit être invalidé si son affichage est une palette graphique et
que l'on change la taille du découpage de la palette. En fait,
il faut parcourir l'arbre pour invalider ce qui peut être
toucher. On ne peut pas continuer comme le type d'affichage
(fil/fac) à créer autant de listes que de cas possibles. Autre
chose à prendre en compte, le même objet peut apparaître 2 fois
avec des attributs différents.
Lancé de rayon
Est-ce vraiment nécessaire de se tortiller pour que
cela marche avec POV ?
Les attributs graphiques Diffuse/Couleur/Speculaire/... ne sont
pas cohérents. Il faut faire exactement ce que POV fait. Ceci
nécessite de faire plein d'ordres GL pour simuler POV. Un
changement de couleur implique une mise à jour de l'ambiante de
POV. Mais pourquoi ce focaliser sur ce point si l'on
ne va plus utiliser POV.
Affichage du modèle
Affichage du modele : de qui parle-t-on ?
De la racine, racine/operateur, racine/vue ?
Question complexe.
La question se pose quand un objet doit réafficher
la scène tel qu'il l'entend. Cela à l'air de fonctionner
actuellement, il faut formaliser la méthode.
Problème de l'affichage des fils
Si pour les noeuds l'objet vue affiche systématiquement leur fils
(sauf s'il demandent explicitement) le temps d'affichage
peut devenir exponentiel.
À ne pas faire
-
Distance au lieu axe des X pour la rentree de valeurs flottantes :
NON car pas de négative
-
Le point actif trace le retour dans le repère courant au lieu
du repère de la scene.... Éric Tosan dit que c'est tant pis.
-
Sauvegarde de tout l'état courant avant affichage objet ?
NON : il est vraiment trop gros.
-
POV : Afficher le % deja calcule.
NON : il suffit de cliquer sur l'image pour voir ou ça en est.
-
Problème du déplacement intéractif de vecteur
IRESOLUBLE : car choix de l'application
Ou alors elle donne le point de base du vecteur.
En cas de réécriture totale
Question diverses
Question GTK
Pourquoi la fonction : gtk_menu_detach (GtkMenu *menu)
Fait disparaitre le menu :
if (GTK_WIDGET_REALIZED (menu))
gtk_widget_unrealize (GTK_WIDGET (menu));