10/N Our latest result is a "mathematical time machine" for computational cosmology (published in @PhysRevLett, featured in @PhysicsMagazine, see the following article) physics.aps.org/articles/v15/75
Geogram computes semi-discrete optimal transport problem with HUGE Laguerre diagrams !
@PhysRevLett@PhysicsMagazine 11/N Reconstructing the trajectories of the galaxies from the origin to now can be recasted as a semi-discrete optimal transport problem, that boils down to computing Laguerre diagrams
13/N or in the upcoming thread about Optimal Transport (I need to prepare the images, stay tuned...)
14/N #geogram has also many application in its original universe (geometry processing and computer graphics). It has remeshing github.com/BrunoLevy/geog…
It uses the "Vorpaline" algorithm, that resamples the surface in 6D, hence generating a nice curvature-adapted mesh.
15/N
Historically, all this story began with texture mapping (first lines of code in 1998). The code is still there and works ! (well, it was rewritten 3 or 4 times since then) github.com/BrunoLevy/geog…
16/N
Bunny Texture Mapping !
17/N #geogram has also atlas generation, texture baking and normal map generation
18/N With normal mapping, one can replace a heavy mesh with a much lighter one, by separating the geometric details from the global shape and storing them in textures.
19/N Here is how it works
20/N It has an easy-to-use API (OpenNL) to assemble sparse matrices and solve sparse linear systems. github.com/BrunoLevy/geog…
21/N It has a graphics library (GLUP) for displaying stuff without the agonizing pain. It is an OpenGL-2.x-like API, plus volumetric primitives, plus advanced shading. It works with GLSL 1.5, 4.40 and OpenGL ES. It works under Linux/Mac/Windows/Android/Web github.com/BrunoLevy/geog…
22/N
It can be used for many crazy computational physics experiments. Here my fluid simulator / how it started
35/N There is also Graphite, an experimental 3D modeler around #geogram, with a GUI, scripting (Lua and Python) and much more.... github.com/BrunoLevy/Grap…
37/N I remember having seen many Ph.D. students loosing too much time with OpenGL (professor, I don't see my triangle !) and GUI (Qt has became super heavy...)
With @ocornut's DearImGui and GLUP (brunolevy.github.io/geogram/GLUP_8…),
writing a 3D application with a GUI is super-easy...
39/N If you do mesh processing, you can derive from SimpleMeshApplication, it is what implements the bundled VorpaView mesh viewer under the hood.
More information avout VorpaView here: github.com/BrunoLevy/geog…
40/N All geogram programs can be "transcripted" to JavaScript and embedded in web pages,using the fabulous Emscripten (emscripten.org).
Geogram demo programs and utilities are usable in your web browser here: members.loria.fr/Bruno.Levy/GEO…
41/N For instance, you can repair and remesh without installing anything, in the web version of geobox members.loria.fr/Bruno.Levy/GEO…
When you "save" your file, it appears as a "download" in your browser
It is approx 5x slower than the native version, but it is usable for small meshes.
42/N Transformers, robots in disguise !
Optimal transport turns the armadillo into a bakugan.
Semi-discrete optimal transport in the geogram/exploragram library, one of the results of an @Inria AeX grant (exploratory action) github.com/BrunoLevy/geog…
43/N Free-surface fluid simulation with Optimal Transport:
it can "liquefy" everything ...
44/N ... including myself !
45/N ... or this guy :-)
46/N Through Graphite (github.com/BrunoLevy/Grap…), one can expose all the functionalities of geogram to several languages (Lua, Python). It can even run in a Jupyter notebook. By direct access to mesh and properties as Numpy array, you can use MatPlotLib to display the result !
47/N List of projects and publications with Geogram here: github.com/BrunoLevy/geog…
DM me or send a pull request if you want to add a reference to your own projects/publications that use geogram.
• • •
Missing some Tweet in this thread? You can try to
force a refresh