Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP #1

Open
Lecrapouille opened this issue Jun 17, 2021 · 1 comment
Open

WIP #1

Lecrapouille opened this issue Jun 17, 2021 · 1 comment

Comments

@Lecrapouille
Copy link
Owner

Lecrapouille commented Jun 17, 2021

  • [API]

  • [Julia]

    • Missing arc API (remove arc)
    • Missing calling semihoward
  • [GUI] Rethink the whole interface:

    • Caption trop longues: afficher que les 10 char avec une animation (shift de 1 char)
    • [GUI] no more SFML => Petri net displayed purely with DearIMGui.
    • [GUI] when simulating display a green rectangle
    • [GUI] modal windows for display counter/dater equation
    • [GUI] Look and feel, UX, widgets, key pressed event propagation between all widget ...
    • [GUI] Pattern Command to implement undo/redo. quick and dirty code
    • [GUI] Allow arc selection/deletion.
    • [GUI] Curved arrows https://github.com/dragonman225/curved-arrows (made but I disliked)
    • [GUI] Allow different nodes/arcs color
    • [GUI] Ctrl/Shift: selectioner plusieurs noeuds et les deplacer/supprimer.
    • [GUI] Aligner automatiquement les noeuds horizontalement ou verticalement ou angle de 45° quand ils sont crees (pour le moment il y a juste une touche pour pivoter les transitions)
    • [GUI] Mode Emacs avec un interpreteur forth + console ? M-x save M-x export-latex M-x is-event-graph ...
  • [PetriNet] functionalities:

    • [max+] semihoward recuperer les autres resultats.
    • [flowshop] afficher les resultats sur une courbe
    • [max+] finir lib sparse matrix.
    • [GRAFCET] Missing init steps
    • [PetriNet] Normalized duration of token animation (Unit of time = x seconds).
    • [PetriNet] mode event graph => voir branch dev-compact-event-graph-disp pour l'affichage compact
    • [PetriNet] Tous les algorithmes ne sont pas optimaux en terme de recherche et iteration => removeNode() + for (auto& a: m_arcs) => devrait etre les arcs in/out mais ils ne sont pas forcement generes. => PetriGUI::update() ne pas iterer sur l'ensembles des transitions mais seulement celles des places ou les tokens sont entres. Voir les TODO dans le code
    • [PetriNet] generateArcsInArcsOut() est appele a chaque debut simulation et generer les arcs pour places n'est pas tout le temps necessaire (uniquement pour generer les sys lin)
    • [PetriNet] Gérer transitions sources
    • [PetriNet] Centrage https://learnsfml.com/how-to-center-text/
  • [Export/Inport] Add more format:

  • [SFML] improvements:

    • [SFML] Compile the project to web assembly / JS / Emscripten to have an online version (it seems not possible).
    • [SFML] Glisser/deposer fichier json pour le charger. Retrouver ce projet c++ qui affiche une fenetre pour chercher un fichier. Semble ne pas etre géré par SFML.
  • [Done]:

    • [PetriNet] Ajoute un pipe comme sur mon jeu d'echecs pour faire un mode debuggueur graphique.
    • [GUI] zoom and world displacement
    • [GUI] m_message_bar: concate several messages and clear them when fading is done.
  • [Julia] Thread the entry_point() and return the Petri net reference to allow acceding to Julia REPL and adding some Julia command. I think this is not possible and currently this is fine.

  • [Export] Genérer le Petri sous dot et sous LaTeX

  • latex: https://latexdraw.com/petri-nets-tikz/

  • dot:

digraph G {
node [shape=circle, color=red]
  P0 [label=P0];
  P1 [label="P1\n2 •", fontsize=20];
node [shape=box, color=blue]
  T0;
  T1;
edge [style=""]
  P0 -> { T0, T1 } [label=2.5];
  T0 -> P1 [label=2];
}
@Lecrapouille
Copy link
Owner Author

Remove x, y, angle, count from place, transition, arcs classes and move them inside the Editor class.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant