p5.js - p5js 中的鼠标跟踪
问题描述
当鼠标悬停在一个国家的地图上(这不是标准形状)时,我希望在 p5js 中发生一些事情。我怎样才能做到这一点?我的意思是如何在国家地图等非标准形状上跟踪鼠标?
(我已将此形状加载为图像,并且边界外的斑点仍然是图像的一部分,但是是透明的。)
谢谢
解决方案
有几种方法可以做到这一点:
- 您可以在代码中获取几何图形,并使用它来检查光标是否在形状内。然后谷歌诸如“检查点是否在多边形内”之类的大量资源。即使您仍想使用图像,也可以这样做,或者您可以改用该
createShape()
方法绘制形状。 - 或者您可以检查鼠标下的颜色。如果它不是背景颜色,那么您就在形状内部。这仅在您只有一个国家或每个国家的颜色不同时才有效。
如果我是你,我会倾向于第一个选项。首先做一些简单的工作:创建一个硬编码的形状,然后创建一个草图,当鼠标在该形状内单击时,它会向控制台打印一条消息。然后获取该国家的几何图形并使用它而不是硬编码的形状。
然后,如果您遇到困难,您可以发布MCVE以及更具体的技术问题。祝你好运。
推荐阅读
- vlc - libvlc.dll / libvlccore.dll 是否支持打开和读取超时?
- c# - 如何循环遍历 n 维稀疏矩阵(由自己的类创建)?
- omnet++ - 如何在主机 [] 中使用变量
- python - 如果给定行/列中存在键,则迭代键列表并添加到 Pandas DF
- azure - 如何在 CosmosDB SqlAPI 中使用破折号查询属性?
- reactjs - axios 前端请求总是从 Flask-restful 后端得到错误,即使响应代码是 200
- okhttp - 在 OkHTTP 中,如何将 keep-alive 设置为 false?
- ansible - 如何在ansible中基于组运行任务
- python - 如何修改gtk textview的部分文本
- tabulator - (制表符 - 编辑器 - 进度)进度无法将值设置为 100%