Author Topic: Petit soucis cosmétique - Arbre Ascendant et Descendant graphique multi-générati  (Read 778 times)

0 Members and 1 Guest are viewing this topic.

Offline emmanuel.gil

  • VIP
  • Full Member
  • *
  • Posts: 24
    • View Profile
Bonjour,
 Je viens d'effectuer une sortie graphique par la fonction Arbre Ascendant et Descendant graphique multi-génération
 j'ai un petit problème d'ordre cosmétique, avant le couple de la personne choisie comme départ de cet arbre s'affichait au centre de l'arbre.
 Maintenant ce couple est affiché à gauche de l'arbre et je trouve cela moins esthétique qu'au centre.
 la même remarque s'applique pour les arbres descendants et ascendants.
serait t'il possible de remettre le couple de départ centré par rapport à l'arbre généré ?
Ou d'ajouter une option (gauche-centré-droite) ?
Merci pour le travail  effectué en permanence sur le logiciel.
Emmanuel

Offline FredericL

  • VIP
  • Hero Member
  • *
  • Posts: 729
    • View Profile
    • Généalogie personnelle et logiciel gratuit Ancestris
Bonjour,

Dans les options du rapport, vous pouvez choisir l'orientation des branches dans la première option: générations alignées, centre, à gauche.
Cette nouvelle sortie que vous voyez, c'est celle qui aligne horizontalement les générations. Ma préférée de loin. C'est une nouveauté. Mais je comprends aussi que vous préfériez celle d'avant.
Je n'ai pas réussi (et je me suis un peut cassé la tête), à le faire en plus centré, donc elles sont calées à gauche.
Personnellement je trouve beaucoup plus simple qu'elle ne soit pas centrées, car avec de grands arbres, on sait toujours où trouver le début: en bas à gauche. Alors que quand c'est centré, on passe son temps à chercher le centre.
Bref, question de goût. En tout cas vous pouvez retrouver votre choix précédent dans la première option "Centré vers les bords".

Bien cordialement.

Offline emmanuel.gil

  • VIP
  • Full Member
  • *
  • Posts: 24
    • View Profile
Merci FredericL,
Super, j'avoue que le terme "centré vers les bords" ne m'a pas trop parlé.
Je ne sais pas si je n'aurais pas mieux compris avec "centré" tout cours ou "centré par rapports aux bords".
Je sais, je chipote mais c'est pour ça que je n'avais pas essayé l'option.
Il est possible que pour des arbres plus grand que le mien la lecture s'avère plus facile avec les arbres calés à Gauche.
Du coup j'ai du mal à comprendre ce que représente générations alignées. (est-ce que lorsque l'on choisi "centré vers les bords" ou "Gauche à Droite" les générations ne sont plus alignées ?)
Quelle est la différence entre "générations alignées" et "Gauche à Droite" (car dans le cas d'un arbre descendant sur 7 générations, je ne vois pas de différences) ?

Cordialement.

Emmanuel

Offline Zurga

  • VIP
  • Supernatural Member
  • *
  • Posts: 3 779
    • View Profile
Petit exemple des trois dispositions sur le même fichier.
Chaque couleur correspond à une génération

- Générations alignées : on essaye au mieux que les cousins soient sur la même ligne

- Gauche à droite: On commence la première case en bas à gauche et on s'étale vers la droite et le haut pour ajouter des cases.

- Centré vers les bord : on place la première case au milieu en bas et on s'étale vers le haut et les bords.

Zurga

Offline FredericL

  • VIP
  • Hero Member
  • *
  • Posts: 729
    • View Profile
    • Généalogie personnelle et logiciel gratuit Ancestris
En pratique et pour expliquer:

- Centré - on part du couple de départ et on monte au milieu en plaçant les ancêtre et les descendants comme on peut au fur et à mesure qu'on monte. Mais du coup les individus d'une même génération n'apparaissent pas toujours (rarement) sur une même ligne horizontale.

- De gauche à Droite = même chose mais tout est calé à gauche

- Générations alignées = comme "A gauche" mais en ayant les mêmes générations alignées sur une même horizontale.

(vous allez me dire, pourquoi n'a-t-on pas centrée ET alignées... Et bien je n'ai pas réussi... Un vrai casse tête pour les calculs d'espacement vu la façon dont l'algorithme est fait.)

Je partage votre perplexité devant ces libellés. Je vais les revoir et suis preneur de votre proposition pour les 3 libellés pour que ce soit plus compréhensible. Que proposeriez-vous s'il vous plaît ?

Bien cordialement,
Frédéric

Offline emmanuel.gil

  • VIP
  • Full Member
  • *
  • Posts: 24
    • View Profile
Merci Zurga et Frederic pour ces explications.
La compilation des deux derniers posts mériteraient d'être intégrés dans le mode d'emploi au niveau des rapports.
c'est bien plus clair pour moi.
Je comprend la difficulté des libellés, car de plus ils doivent par la suite être traduits.
La première difficulté que je vois c'est lorsque l'on applique des rotations c'est peut être pour ça qu'il y a des expressions comme "centrés vers les bords"
Pour cette expression la contraction en "centré" me parait suffisante sauf si il y a des cas que je n'aurais pas vu.
"Gauche à droite" me semble correcte
"Générations alignés" Je ne sais pas comment l'exprimer mais ça serait cool de pouvoir préciser que c'est aussi "Centré à Gauche" mais l'usage des mot Centré et à Gauche ne me parait pas judicieux et pour le moment je n'ai pas trouvé le terme adéquat. j'avais pensé "et alignement à Gauche" mais ça répète le terme aligné et peut générer de la confusion. J'avoue que je sèche un peu. dans l'état je laisserais ce libellé identique.

@Frederic J'avoue que la question m'avait effleuré, pourquoi pas centrées et alignées pour les générations.
Dans une précédente discussion le sujet avait été abordé et on m'avait expliqué que la personne qui avait écrit le code avait quitté le projet.
J'avais alors voulu regarder le code mais mes connaissances de java étant nulles et sans trouver de documentations sur les fonctions et variables. J'ai du me rendre à l'évidence que c'était hors de ma portée.
Sans documentation sur l'algorithme c'est difficile de savoir pourquoi ce qui fonctionne sur l'arbre descendant ne fonctionne pas sur l'arbre ascendant.
Pour mes arbres les représentations des arbres descendants étaient alignées sur les génération et centrées avant les dernières mises à jour.
Avec l'option "centré vers les bords" les générations sont toujours alignés.
Je serai amené à penser que le système de numérotation lors du tri n'est pas généré de la même manière en cas d'ancêtres ou de descendants.
Il semble que l'algorithme utilisé pour l'arbre dynamique n'ai pas ce problème, mais celui-ci ne peut pas afficher un arbre complet.

C'est d'ailleurs en testant récemment que j'ai compris pourquoi mes générations ascendantes n'étaient pas alignées malgré les modifications apportées.
J'avais l'option "nombre de générations de descendants d'ancêtres" sur "illimité" et tous le travail d'alignement qui marche sans descendants d'ancêtres se dégrade au fur et à mesure des générations. l'algorithme est je pense en cause à ce niveau aussi sur les méthodes de tri qui pourraient permettre de pouvoir aligner les générations peut être le manque d'une table d'index pour permettre de gérer les niveaux et positions. Je comprend bien qu'il est pratiquement impossible de réécrire quelque chose sans risquer de compromettre le programme complet en plus du temps nécessaire pour réaliser ou corriger l'algorithme.

En tout cas bravo pour le travail effectué sur le code et la disponibilité sur les forums.

Très cordialement.

Emmanuel

P.S. Si je trouve une meilleure expression pour "Générations alignées", je ferais un post à la suite de cette discussion.

Offline FredericL

  • VIP
  • Hero Member
  • *
  • Posts: 729
    • View Profile
    • Généalogie personnelle et logiciel gratuit Ancestris
Merci, et "oui", c'est l'option "nombre de générations de descendants d'ancêtres" sur "illimité" qui désaligne les générations quand on est sur "Centré".
Je vais changé le libellé pour "Centré".

A bientôt,
Frédéric

Offline Zurga

  • VIP
  • Supernatural Member
  • *
  • Posts: 3 779
    • View Profile
Sans documentation sur l'algorithme c'est difficile de savoir pourquoi ce qui fonctionne sur l'arbre descendant ne fonctionne pas sur l'arbre ascendant.
Quelques indications sur l'algorithme actuel :
- Quand on doit placer une case, on place aussi tous ses descendants en fonction des options sélectionnées. Cela donne la zone réservée pour afficher la case et toutes les cases descendantes.
- On commence par placer le De Cujus choisi pour l'impression en fonction de l'algorithme choisi et des zones déjà bloqués par les cases précédentes.
- On passe ensuite aux différents mariages
- On passe aux parents.
- On répète en prenant chaque parent comme nouveau De Cujus.

La partie complexe étant la définition de la zone qui inclut la case et ses descendants.
Comme on fait une zone, on ne peut pas choisir en avance la position de chaque génération.
Pour arriver à faire mieux, il faudrait re-concevoir tout l'algorithme.
C'est pas impossible, mais un peu hors du scope de ce qu'on veut faire dans la version 12 actuelle.

Zurga

Offline claude41

  • VIP
  • Hero Member
  • *
  • Posts: 141
    • View Profile
   Ce qui serait probablement possible d'améliorer assez facilement: le temps d'affichage  des explications dans les rectangles jaunes des nombreuses options de cet Arbre Ascendant et Descendant ...
   Plutôt qu'une temporisation fixe, un affichage permanent pendant que le curseur reste sur la ligne permettrait de lire confortablement les informations bien utiles.

C'est juste une remarque, j'imagine le casse tête pour modifier la mise en page !

Claude

Offline Zurga

  • VIP
  • Supernatural Member
  • *
  • Posts: 3 779
    • View Profile
Pour les bulles d'aides, il n'y a pas de temporisation explicite.
C'est le fonctionnement standard des librairies graphiques utilisées.

Zurga

Offline claude41

  • VIP
  • Hero Member
  • *
  • Posts: 141
    • View Profile
On fera avec, le problème c'est la temporisation qui n'est pas proportionnelle à la longueur du texte.