* Selection Plugin and Tutorial Entry
* rm __1::
* templates; and dont take F as input
* missing template, fix bug
* better commenting
* windows doesn't understand M_PI
* Use ImGui::SetNextWindowSize
Co-authored-by: Jérémie Dumas <jeremie.dumas@ens-lyon.org>
* Added simple raytracing renderer which allows off-screen rendering of meshes.
Using embree (already included in libigl). Addresses #1458, #601
Does not depend on OpenGL.
Tutorial example renders `fertility` example with average gaussian curvature field, in 0.1 sec.
* Separated EmbreeDevice
* Changed singleton pattern, updated variable name, removed EmbreeDevice.cpp
* Added improved .msh reader/writer + tests + example,
with fixes proposed by @qnzhou
put append_mat_to_vec into igl::internal
* Update tutorial number.
* Changed tutorial code to use example from https://github.com/libigl/libigl-tutorial-data/pull/1 and flat shading
* Remove commented code.
* Rename tutorial number + update tutorial data.
Co-authored-by: Jérémie Dumas <jdumas@users.noreply.github.com>
Co-authored-by: Jérémie Dumas <jeremie.dumas@ens-lyon.org>
* Added vector Dirichlet and curved Hessian functionality, as well as tutorials.
* Applied jdumas changes
* added github actions for this branch
* more jdumas changes
* Changed int to appropriate scalar
* moved around Int definition
* forgot braces somewhere
* forgot braces
* Applied changes suggested by jdumas
* forgot braces
* remove custom github workflow
* First working version to automatically clone ImGuizmo into libigl
* Corresponding changes to cmake files
* Moved contents of slicing plugin and menu extra to new file ImGuizmoMenu in imgui directory of igl
* Moved slicing plug into main, and ImGuizmo::EditTransform into ImGuizmoMenu which resides in igl
* Temporary hid Local and World options because they don't do anything and refactored main for tutorial 109 for clarity with some documentation
* Got orthogonal projection to render ImGuizmo normally
* Removed unecessary changes
* Removed snap parameter from ImGuizmo menu
* Added a cmake configuration for ImGuizmo
* Include imgui library in building ImGuizmo target
* Added a workflow
* Added this branch to workflow
* Update linux packages
* Explicitly include imgui header for imguizmo
* Just copy in relevant imguizmo files for now as opposed to through cmake since ImGuizmo repo does not have its own CMake file
* Conditional include to prevent mac build from failing
* Revert files for debugging cmake build
* Added build target for ImGuizmo
* Expose Imgui lib to ImGuizmo with PUBLIC interface
* Refactor build
* Get older SHA1 commit to avoid break on macOS
* Change imguizmo menu namespace
* Cleaning up + fix window border size issue.
Co-authored-by: Jérémie Dumas <jeremie.dumas@ens-lyon.org>
* This is the code that renders the letter a for each vertex on the mesh paired with a libigl-example-project
* Code for rendering just the number 12 on the 12th vertex
* Rendering vertices via glsl works, with geometry shader
* Added dynamic font scaling so accomodate ortho and perspective projections.
* Got faceids rendering
* Code cleanup
* This allows user to add custom text at some location rendered with the text shaders
* Dedicated separate VBOs for face and vertid labels
* Added in extra label rendering
* Moved texture binding to its own function and other code cleanup
* More conflict resolution when fetching upstream changes
* Resolved the relative path to font atlas
* Change scope variable for font atlas macro
* Removed PNG texture loaded from disk, and encoded font atlas into byte array. Other minor changes for VBO iterators and removed uneeded dependencies from previous commits
* Encapsulated text VBOs into struct to remove code duplication, and fixed bug for both overlay and text shaders being used at same time.
* Remove whitespace
* Tentative for Windows build fix not initializing TextGL structs in header
* Removed uniform that only belongs for text labels
* Added init and free methods for label buffers initialization and passing some args by reference on label methods
* Compressed font atlas that is under 50kB reduced from 330kB with decompression function
* Converting type from string literal to char array
* Broke up string literal
* Cleanup font atlas.
* Linux compile fix.
* Remove deprecated text pipeline.
Co-authored-by: Jérémie Dumas <jeremie.dumas@ens-lyon.org>
* dont use floating point values to index eigen types
* only cast doubles not the whole expression
* add remaining casts
* Update cast.
Co-authored-by: Jérémie Dumas <jeremie.dumas@ens-lyon.org>
* Add cmap option to set_data + fix jet colormap.
* Switch from jet to turbo.
* Add explicit turbo colormap.
* Add option for number of intervals in colormap.
* Switch to Viridis as default.