1. More clarity for inspecting Hasse diagrams
Peter Koppatz, Markus Pape, Rainer Bruggemann, Valentin Pratz
UAS Wildau – Germany
06.05.2017
Peter Koppatz, Markus Pape, Rainer Bruggemann, Valentin Pratz (UAS Wildau – Germany)More clarity for inspecting Hasse diagrams 06.05.2017 1 / 19
2. Table of Content
1 Who is who?
Helmut Hasse
PyHasse-Team
2 Development
Edition 2.x
Web version I (HD2D)
Web version II (HD2D + HD3D)
3 PyHasse 3D
4 PyHasse 3D
5 Demo + future
Peter Koppatz, Markus Pape, Rainer Bruggemann, Valentin Pratz (UAS Wildau – Germany)More clarity for inspecting Hasse diagrams 06.05.2017 2 / 19
3. Who is who?
Mathematiker: Helmut Hasse
Helmut Hasse
(* 25. August 1898 in Kassel;
† 26. Dezember 1979 in Ahrensburg near
Hamburg)
was a German mathematician working in
algebraic number theory, known for fund-
amental contributions to class field theory,
the application of p-adic numbers to local
class field theory and diophantine geometry
(Hasse principle), and
to local zeta functions.
Quelle: https://en.wikipedia.org/wiki/Helmut_Hasse
Peter Koppatz, Markus Pape, Rainer Bruggemann, Valentin Pratz (UAS Wildau – Germany)More clarity for inspecting Hasse diagrams 06.05.2017 3 / 19
4. Developer-Team
All active developers (2017)
Rainer Bruggemann
(Mathematics)
Peter Koppatz
(Coordination)
Valentin Pratz (HD2D-Viewer)
Markus Pape (HD3D-Viewer)
Peter Koppatz, Markus Pape, Rainer Bruggemann, Valentin Pratz (UAS Wildau – Germany)More clarity for inspecting Hasse diagrams 06.05.2017 4 / 19
5. About the project
At the beginning
The PyHasse software originates from Dr. Rainer Brüggemann, retired
senior scientist from Leibniz - Institute of Freshwater Ecology and Inland
Fisheries Berlin
He started the development of the toolbox »PyHasse«, to use the
possibilities of graph theory and its visualisations.
The toobox uses the prefix »Py« due to the programming language it
is written in: »Python«. It needs:
Python 2.6.x
Tcl/Tk for the GUI and visualisation
What we have learned. . .
Prototyping with Python is an easy task.
Distributing the software without pip, git,
mercurial, . . . is inconvenient.
Peter Koppatz, Markus Pape, Rainer Bruggemann, Valentin Pratz (UAS Wildau – Germany)More clarity for inspecting Hasse diagrams 06.05.2017 5 / 19
6. About the Project
PyHasse (First browser version)
A new version should use a browser as GUI:
Python 3.x
Client/Server with html generated at the server
D3 to render and manipulate 2D Hasse diagrams
What we have learned. . .
Pep8 and Tests increase the software quality
Tests are also documenting the code and
therefore the code is better understandable.
A consequent separation of models and views
was not achieved!
Peter Koppatz, Markus Pape, Rainer Bruggemann, Valentin Pratz (UAS Wildau – Germany)More clarity for inspecting Hasse diagrams 06.05.2017 6 / 19
7. About the project
PyHasse 3D (Second browser version)
Python 3.x
Client/Server
Vue-Framework UI (front-end)
Python (back-end)
data exchange realised with JSON
D3 for representation of Hasse diagrams in 2D.
Blend4Web for representation of Hasse diagrams in 3D.
What we have learned. . .
3D diagrams are sexy and fasilitate inspection of
results.
Peter Koppatz, Markus Pape, Rainer Bruggemann, Valentin Pratz (UAS Wildau – Germany)More clarity for inspecting Hasse diagrams 06.05.2017 7 / 19
8. Why 3D and not only 2D?
Hasse diagrams can become complex:
Problem!
Crossing lines makes it difficult to inspect/interpret
the diagrams!
Peter Koppatz, Markus Pape, Rainer Bruggemann, Valentin Pratz (UAS Wildau – Germany)More clarity for inspecting Hasse diagrams 06.05.2017 8 / 19
9. Why 3D and not only 2D?
Hasse diagrams can become much more complex:
Problem!
Crossing lines makes it difficult to inspect/interpret
the diagrams!
Peter Koppatz, Markus Pape, Rainer Bruggemann, Valentin Pratz (UAS Wildau – Germany)More clarity for inspecting Hasse diagrams 06.05.2017 9 / 19
10. Improvements with a 3D-View I
New possibilities to navigate:
Rotation in all axes
Autorotation
full screen mode
Peter Koppatz, Markus Pape, Rainer Bruggemann, Valentin Pratz (UAS Wildau – Germany)More clarity for inspecting Hasse diagrams 06.05.2017 10 / 19
11. Improveents with a 3D-View II
Scalability/annotations
Rendering different qualities
Additional informations for each object
Peter Koppatz, Markus Pape, Rainer Bruggemann, Valentin Pratz (UAS Wildau – Germany)More clarity for inspecting Hasse diagrams 06.05.2017 11 / 19
12. List of wishes
The implementation of functionality has just started with the main target
of a user friendly navigation system.
different camera views
walk on the graph
select/deselect important/unimportant parts of the graph
Dynamically changing input parameters for an what-if analysis
(important for stakeholders)
(Your ideas/your wishes?)
Peter Koppatz, Markus Pape, Rainer Bruggemann, Valentin Pratz (UAS Wildau – Germany)More clarity for inspecting Hasse diagrams 06.05.2017 12 / 19
13. Why is this possible?
All used programs are OpenSource:
Python 3.x (server)
Blender + BPY 3.x (graphics)
PyHasse (toolbox)
Blend4Web (3D graphics for the web)
3D (2D graphics for the web)
JavaScript (language at client side)
Vue (GUI-Framework at client side)
Mercurial/Bitbucket (code repository)
Peter Koppatz, Markus Pape, Rainer Bruggemann, Valentin Pratz (UAS Wildau – Germany)More clarity for inspecting Hasse diagrams 06.05.2017 13 / 19
14. Demo
A demo (prototyp) to get the idea:
https://hd3d-demo.pyhasse.org
Infos about the PyHasse project
https://pyhasse.org
Peter Koppatz, Markus Pape, Rainer Bruggemann, Valentin Pratz (UAS Wildau – Germany)More clarity for inspecting Hasse diagrams 06.05.2017 14 / 19
15. Questions?
Thanks for your attention.
An a posteriori remark:
The software is still not completely available, tests and documentation are
still not finalized. We expect that the new version is ready at the end of
this year. . .
Peter Koppatz, Markus Pape, Rainer Bruggemann, Valentin Pratz (UAS Wildau – Germany)More clarity for inspecting Hasse diagrams 06.05.2017 15 / 19
17. Other projects?
PyMove3D (programming Python with and in Blender)
https://pymove3d.sudile.com
http://pymove3d.pysv.org/python_course
B3D101 (Blender for Kids)
https://b3d101.org
Methopedia (Collections of methods for Teachers)
https://methopedia.eu
Peter Koppatz, Markus Pape, Rainer Bruggemann, Valentin Pratz (UAS Wildau – Germany)More clarity for inspecting Hasse diagrams 06.05.2017 17 / 19
18. Informations about the project
Website
https://pyhasse.org
Slides
https://www.slideshare.net/pyhasse
https://pyhasse.org/blog
Demo
http://hd3d-demo.pyhasse.org
Peter Koppatz, Markus Pape, Rainer Bruggemann, Valentin Pratz (UAS Wildau – Germany)More clarity for inspecting Hasse diagrams 06.05.2017 18 / 19