demo_immvision_launcher.cpp 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. // Part of ImGui Bundle - MIT License - Copyright (c) 2022-2026 Pascal Thomet - https://github.com/pthom/imgui_bundle
  2. #include "imgui.h"
  3. #include "hello_imgui/hello_imgui.h"
  4. #include "imgui_md_wrapper/imgui_md_wrapper.h"
  5. #include "demo_utils/api_demos.h"
  6. #ifndef IMGUI_BUNDLE_WITH_IMMVISION
  7. void demo_immvision_launcher()
  8. {
  9. ImGui::Text("Dear ImGui Bundle was compiled without support for ImmVision (this requires OpenGL)");
  10. }
  11. #else
  12. #include "immvision/immvision.h"
  13. void demo_immvision_display();
  14. void demo_immvision_link();
  15. void demo_immvision_inspector();
  16. void demo_immvision_process();
  17. void demo_immvision_launcher()
  18. {
  19. if (HelloImGui::GetRunnerParams()->rendererBackendType != HelloImGui::RendererBackendType::OpenGL3)
  20. {
  21. ImGui::Text("ImmVision is only supported with OpenGL renderer");
  22. return;
  23. }
  24. ImGuiMd::RenderUnindented(R"(
  25. [ImmVision](https://github.com/pthom/immvision) is an immediate image debugger and inspector. It can display and analyse RGB & float images with 1 to 4 channels, with zoom, pan, pixel inspection, and colormaps.
  26. )");
  27. if (ImGui::CollapsingHeader("Display images"))
  28. {
  29. demo_immvision_display();
  30. ShowPythonVsCppFile("demos_immvision/demo_immvision_display");
  31. }
  32. if (ImGui::CollapsingHeader("Link images zoom"))
  33. {
  34. demo_immvision_link();
  35. ShowPythonVsCppFile("demos_immvision/demo_immvision_link");
  36. }
  37. if (ImGui::CollapsingHeader("Image inspector"))
  38. {
  39. demo_immvision_inspector();
  40. ShowPythonVsCppFile("demos_immvision/demo_immvision_inspector");
  41. }
  42. if (ImGui::CollapsingHeader("Example with image processing"))
  43. {
  44. demo_immvision_process();
  45. ShowPythonVsCppFile("demos_immvision/demo_immvision_process", 40);
  46. }
  47. }
  48. #endif