Add plugin geometry injection API for the 3D map scene#7520
Conversation
🍎 MacOS DMG universal buildsDownload a MacOS DMG universal build of this PR for testing. 📱 Android buildsDownload an Android arm64 build of this PR for testing. Other Android architectures🪟 Windows buildsDownload a Windows build of this PR for testing and for arm64. (Built from commit 650b46d) 🐧 Linux AppImage buildsDownload a Linux AppImage build of this PR for testing. |
There was a problem hiding this comment.
Hm, while this gets to our objective, I'm -1 on the method we employ here.
Our approach should be injecting into the repeater3D actual Quick3DGeometry items that live within the plugin and get removed when the plugin is unloaded.
That gives us dynamic geometry, colors, line width, etc.
Also, if possible (I'd hope so 😉), these 3D geometries should live on outside of an existing 3D map view, so they aren't killed when the 3D map view itself is turned off.
a4e60f6 to
d7f66c1
Compare
Done
I am thinking .. :) Plugin updated. |
d7f66c1 to
650b46d
Compare
🚀 Description
Plugins currently have no way to draw custom geometry inside the 3D map view. This PR adds a minimal, stable API surface that lets any QField plugin inject and remove geometries from the 3D scene at runtime.
✨ How a plugin uses it
Demo
Screencast.From.2026-06-05.22-09-00.mp4
Plugin
Example plugin qfield-3d-inject.zipExample plugin qfield-3d-inject.zip