使用cv2控制鼠标实现circle的拖拽

embedded/2024/10/18 0:21:42/

在这里插入图片描述

2.代码

python">import numpy as np
import cv2x_center = [100,200,300,400]
y_center = [200,200,200,200]
radius = 30def mouse_LButtonDown(event, x, y, flags, param):global tempif event == cv2.EVENT_LBUTTONDOWN:print(f" Down Clicked at ({x}, {y})")for i in range(len(x_center)):if (x-x_center[i])**2 + (y-y_center[i])**2 <= radius**2:temp = iprint("选中")if event == cv2.EVENT_LBUTTONUP:print(f" Up Clicked at ({x}, {y})")print(temp)x_center[temp] = xy_center[temp] = yprint('更新成功')print(x_center)print(y_center)cv2.namedWindow('mouse',cv2.WINDOW_NORMAL)
cv2.resizeWindow('mouse',640,480)
cv2.setMouseCallback('mouse', mouse_LButtonDown)color = (0, 255, 0)while True:img = np.zeros((480, 640, 3), dtype=np.uint8)for i in range(len(x_center)):cv2.circle(img, (x_center[i], y_center[i]), 30, color, -1, lineType=cv2.FILLED)cv2.imshow('mouse', img)key =  cv2.waitKey(1)if key == ord('q'):breakcv2.destroyAllWindows()

http://www.ppmy.cn/embedded/48616.html

相关文章

IDEA使用阿里通义灵码插件

在这个AI火热的时代&#xff0c;纯手工写代码已经有点out了&#xff0c;使用AI插件可以帮我们快速写代码&#xff0c;起码能省去写那些简单、重复性的代码&#xff0c;大大提高编码效率&#xff0c;在这里我推荐使用阿里的通义灵码 注册安装 安装注册好后&#xff0c;打开我们…

【Java】解决Java报错:FileNotFoundException

文章目录 引言1. 错误详解2. 常见的出错场景2.1 文件路径错误2.2 文件名拼写错误2.3 文件权限问题2.4 文件路径未正确拼接 3. 解决方案3.1 检查文件路径3.2 使用相对路径和类路径3.3 检查文件权限3.4 使用文件选择器 4. 预防措施4.1 使用配置文件4.2 使用日志记录4.3 使用单元测…

【javaScript数组,函数】的基础知识点

【javaScript数组&#xff0c;函数】基础知识点 1.关于JavaScript2.数组3.函数 &#x1f4cd;&#x1f4cd;&#x1f4cd;&#x1f4cd;&#x1f4cd;&#x1f4cd;&#x1f4cd;&#x1fae1;&#x1fae1;&#x1fae1;&#x1fae1;&#x1fae1;&#x1fae1; 本文主要讲解…

Django+Vue.js怎么实现搜索功能

一.前言 类似这样的搜索功能 二.前端代码 <div class"form-container"><div class"form-group"><label for"departure-city">出发城市</label><select v-model"departureCity" id"departure-city&q…

2024-06-07 Unity 编辑器开发之编辑器拓展8 —— Scene 窗口拓展

文章目录 1 Handles 类1.1 Scene 响应函数1.2 自定义窗口中监听 Scene1.3 Handles 常用 API2.2.1 颜色控制2.2.2 文本2.2.3 线段2.2.4 虚线2.2.5 圆弧2.2.6 圆2.2.7 立方体2.2.8 几何体2.2.9 移动、旋转、缩放2.2.10 自由移动 / 旋转 2 Scene 窗口中显示 GUI3 HandleUtility4 G…

【QT】记录一次QT程序发布exe过程

记录一次QT程序发布exe过程 使用windeploy与enigma发布独立的QT程序第一步 QT编译输出 **release** 版本第二步 QT 自带 windepoyqt 补全链接库第三步 enigma virtual box压缩打包为单一exe最后【2024-06-07 17】- 【补充】 贴一个自己用的bat脚本【**QtDeploy2exe.bat**】半自…

MySQL基础---库的操作和表的操作(配着自己的实操图,简单易上手)

绪论​ 勿问成功的秘诀为何&#xff0c;且尽全力做您应该做的事吧。–美华纳&#xff1b;本章是MySQL的第二章&#xff0c;本章主要写道MySQL中库和表的增删查改以及对库和表的备份处理&#xff0c;本章是基于上一章所写若没安装mysql可以查看Linux下搭建mysql软件及登录和基本…

Java-开发技巧

1.判断list或者map 用org.apache.commons.collections4包下的 CollectionUtils.isNotEmpty 2.判断字符串 用org.apache.commons.lang3包下的 StringUtils 3.执行分组操作&#xff0c;List<StatusDAO>不会为null情况 Map<LocalDateTime,List<StatusDAO>> …