B2B网络软件

标题: 苹果脚本找图后Detect对象各种方法演示 [打印本页]

作者: YYPOST群发软件    时间: 3 小时前
标题: 苹果脚本找图后Detect对象各种方法演示
苹果脚本找图后Detect对象各种方法演示
苹果脚本找图后Detect对象各种方法演示 B2B网络软件

苹果脚本找图后Detect对象各种方法演示 B2B网络软件

苹果脚本找图后Detect对象各种方法演示 B2B网络软件

  1. /*
  2. 🍎找图后Detect对象各种方法演示
  3. 📝 说明:每次操作前都重新找图,因为点击后屏幕会刷新,坐标会变
  4. */

  5. var cvFile = '图色424964.cv';

  6. printl("=== 找图后Detect对象方法演示 ===");
  7. printl("说明:每次点击前都重新找图,因为点击后屏幕会刷新");
  8. printl("");

  9. // ========== 封装找图函数 ==========
  10. function 找图() {
  11.     var detects = opencv.findImagesEx(cvFile);
  12.     if (detects != null && detects.length > 0) {
  13.         return detects;
  14.     }
  15.     return null;
  16. }

  17. // ========== 循环3次操作 ==========
  18. for (var round = 1; round <= 3; round++) {
  19.     printl("====== 第 " + round + " 轮 ======");
  20.     printl("");

  21.     // 1. 找图 + score
  22.     printl("【" + round + "-1】找图 + score()");
  23.     var detects = 找图();
  24.     if (detects == null) { printl("  ✗ 未找到目标"); break; }
  25.     var detect = detects[0];
  26.     printl("  检测分数: " + (detect.score() * 100).toFixed(2) + "%");
  27.     printl("");

  28.     // 2. 找图 + getRect
  29.     printl("【" + round + "-2】getRect() - 获取检测区域");
  30.     detects = 找图();
  31.     if (detects == null) { printl("  ✗ 未找到目标"); break; }
  32.     detect = detects[0];
  33.     var rect = detect.getRect();
  34.     printl("  " + rect.toString());
  35.     printl("");

  36.     // 3. 找图 + click
  37.     printl("【" + round + "-3】click() - 点击中心点");
  38.     detects = 找图();
  39.     if (detects == null) { printl("  ✗ 未找到目标"); break; }
  40.     detect = detects[0];
  41.     detect.click();
  42.     printl("  ✓ 已点击中心点");
  43.     sleep.second(秒=2);
  44.     printl("");

  45.     // 4. 找图 + clickRandom
  46.     printl("【" + round + "-4】clickRandom() - 随机点击");
  47.     detects = 找图();
  48.     if (detects == null) { printl("  ✗ 未找到目标"); break; }
  49.     detect = detects[0];
  50.     detect.clickRandom();
  51.     printl("  ✓ 已随机点击");
  52.     sleep.second(秒=2);
  53.     printl("");

  54.     // 5. 找图 + getRect详细信息
  55.     printl("【" + round + "-5】getRect() - 获取Rect详细信息");
  56.     detects = 找图();
  57.     if (detects == null) { printl("  ✗ 未找到目标"); break; }
  58.     detect = detects[0];
  59.     var r = detect.getRect();
  60.     printl("  Left: " + r.getLeft() + "  Right: " + r.getRight());
  61.     printl("  Top: " + r.getTop() + "  Bottom: " + r.getBottom());
  62.     printl("");

  63.     printl("--- 第 " + round + " 轮完成 ---");
  64.     printl("");
  65. }

  66. printl("=== 3轮操作全部完成 ===");

  67. /*
  68. 检测目标类[Detect]方法小结

  69. &#128204;score() - 获取检测分数(0~1)
  70. &#128204;getRect() - 获取检测区域,返回Rect对象
  71. &#128204;click() - 点击目标中心点
  72. &#128204;clickRandom() - 随机点击目标区域内

  73. 矩形类[Rect]方法小结(通过detect.getRect()获取)

  74. &#128204;toString() - 输出字符串表示
  75. &#128204;getLeft()/getRight()/getTop()/getBottom() - 获取四个边界值

  76. ⚠️重要:每次点击后屏幕会刷新,必须重新调用opencv.findImagesEx获取新的Detect对象
  77. */
复制代码








欢迎光临 B2B网络软件 (http://bbs.niubt.cn/) Powered by Discuz! X3.2