- Incorporate VTK's dataset visualization capabilities with versatility of Dear ImGui
- Multiple independent VtkViewerinstances can be used in the same program to display multiple VTK scenes simultaneously
 
- Multiple independent 
- Uses VTK's OpenGLRenderWindow class
- Renders to texture and displays the texture natively with ImGui
 
- Compatible with both ImGui's mainanddockingbranches
- CMake
- Build separately & link
 - Build your executable, imgui, your OpenGL Loader (e.g., gl3w), and imgui-vtk. Make sure to link imgui-vtk against imgui, your OpenGL Loader (e.g., gl3w), and VTK!
- See CMakeLists.txtfor more details
 - Build together
 - Build your executable, imgui, your OpenGL Loader (e.g., gl3w), and imgui-vtk all together, from source.
- See CMakeLists-alt.txtfor more details
 
- See main.cpp
- imgui,- gl3w, and- glfware included in this repository as git submodules- For integration into an existing project, only VtkViewer.handVtkViewer.cppare needed. However, they will need to be linked with or built alongside Dear ImGui and VTK
 
- For integration into an existing project, only 
- Dependencies are built separately in CMakeLists.txtthen linked together as static libraries- CMakeLists-alt.txtbuilds everything together from source
 
- Usage (see main.cppfor details)- You must create and end ImGui windows yourself
- Allows for other widgets to be placed in the same ImGui window as the VTK "viewport"
- Allows for full control over window size, behavior, etc. via Dear ImGui API
 
 
- You must create and end ImGui windows yourself
- Note: For the sake of cleanliness and readability, most ImGui preprocessor directives were removed. Files no longer auto-detect your OpenGL loader. While everything is currently set up for OpenGL3 + GLFW + GL3W, you may need to adjust #includestatements, etc. to match your use case.
