diff --git a/modules/v4d/include/opencv2/v4d/v4d.hpp b/modules/v4d/include/opencv2/v4d/v4d.hpp index c8c753ae3..349396d27 100644 --- a/modules/v4d/include/opencv2/v4d/v4d.hpp +++ b/modules/v4d/include/opencv2/v4d/v4d.hpp @@ -126,7 +126,7 @@ class CV_EXPORTS V4D { std::future futureWriter_; std::function keyEventCb_; std::function mouseEventCb_; - cv::Point mousePos_; + cv::Point2f mousePos_; uint64_t frameCnt_ = 0; bool showFPS_ = true; bool printFPS_ = true; @@ -386,8 +386,8 @@ private: void mouse_button_event(int button, int action, int modifiers); bool keyboard_event(int key, int scancode, int action, int modifiers); - cv::Point getMousePosition(); - void setMousePosition(const cv::Point& pt); + cv::Point2f getMousePosition(); + void setMousePosition(const cv::Point2f& pt); FrameBufferContext& fbCtx(); CLVAContext& clvaCtx(); diff --git a/modules/v4d/src/detail/framebuffercontext.cpp b/modules/v4d/src/detail/framebuffercontext.cpp index 90a5844e9..af7823e2f 100644 --- a/modules/v4d/src/detail/framebuffercontext.cpp +++ b/modules/v4d/src/detail/framebuffercontext.cpp @@ -309,7 +309,7 @@ void FrameBufferContext::init() { v4d->nguiCtx().screen().cursor_pos_callback_event(x, y); } - v4d->setMousePosition(cv::Point{x, y}); + v4d->setMousePosition(cv::Point2f(float(x), float(y))); } ); glfwSetMouseButtonCallback(getGLFWWindow(), diff --git a/modules/v4d/src/v4d.cpp b/modules/v4d/src/v4d.cpp index 4d93672c5..873761310 100644 --- a/modules/v4d/src/v4d.cpp +++ b/modules/v4d/src/v4d.cpp @@ -81,11 +81,11 @@ bool V4D::keyboard_event(int key, int scancode, int action, int modifiers) { return nguiCtx().screen().keyboard_event(key, scancode, action, modifiers); } -cv::Point V4D::getMousePosition() { +cv::Point2f V4D::getMousePosition() { return mousePos_; } -void V4D::setMousePosition(const cv::Point& pt) { +void V4D::setMousePosition(const cv::Point2f& pt) { mousePos_ = pt; } @@ -118,7 +118,6 @@ GLContext& V4D::glCtx(uint32_t idx) { glContexts_.insert({idx, ctx}); return *ctx; } - } bool V4D::hasFbCtx() { @@ -494,7 +493,7 @@ bool V4D::display() { // swapContextBuffers(); #ifdef __EMSCRIPTEN__ - nguiCtx().render(printFPS_, showFPS_); + nguiCtx().render(printFPS_, showFPS_, showTracking_); #endif run_sync_on_main<6>([&, this](){ {