cocos creator v3.6版本使用Intersection2D模块的circleCircle方法

2023-11-14

在cocos creator v3版本中Intersection2D模块的circleCircle方法可以用来检测两个圆形是否相交

该方法可以实现的功能有:
cocos creator吸铁石实现cocos creator物体在固定位置吸附cocos creator物体吸附效果cocos creator吸铁石实现cocos creator两个物体时候相交cocos creator物体判断是否在某个范围内cocos creator图片吸附等等

效果展示:
1.不相交
在这里插入图片描述
2.相交
在这里插入图片描述

插件代码:

import { _decorator, Component, Intersection2D, Vec2, UITransform} from 'cc';
const { ccclass, property } = _decorator;

@ccclass('matching')
export class matching extends Component {
    start() {
        let SpriteSplash = this.node.getChildByName("SpriteSplash");
        let circlePos = new Vec2(SpriteSplash.position.x, SpriteSplash.position.y);
        let circleRadius = SpriteSplash.getComponent(UITransform).width/2;

        let SpriteSplash1 = this.node.getChildByName("SpriteSplash1")
        let circle1Pos = new Vec2(SpriteSplash1.position.x, SpriteSplash1.position.y);
        let circle1Radius = SpriteSplash1.getComponent(UITransform).width/2;


        let isIntersect = Intersection2D.circleCircle(circlePos, circleRadius, circle1Pos, circle1Radius);
        if (isIntersect) {
            console.log('两个圆形相交');
        } else {
            console.log('两个圆形不相交');
        }
    }

    update(deltaTime: number) {
        
    }
}


将插件填入添加到节点中

在这里插入图片描述

cocos creator吸铁石实现说明
基于circleCircle方法,只要将第一个物体(人物)的半径加宽,第二个物体(金币)进入到圈的范围内,circleCircle将返回true(相交),随后可以通过tween缓动系统移动,即可实现

cocos creator物体在固定位置吸附
基于circleCircle方法,在固定位置地方设置一个半透明小圆点,第二个物体进入到圈的范围内(可以将第二个物体的半径c2r设置小些差不多和第一个小圆点大小),当两个物体相交时,将物体的锚点直接设置到固定点,即可实现吸附效果。

有任何不会或者疑问的地方,或者像了解解决方案,随时联系文章作者,作者看到会立即回复,给个赞谢谢!

官方 circleCircle方法介绍https://docs.cocos.com/creator/api/zh/class/Intersection2D?id=circleCircle
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

cocos creator v3.6版本使用Intersection2D模块的circleCircle方法 的相关文章

  • 深入理解Golang之Map

    目录 写在前面 哈希表 如何解决哈希冲突的问题 1 链表地址法 2 开放地址法 开放地址 线性探测法 开放地址 平方探测法 开放地址 双哈希 Go Map实现 map数据结构 map的结构体为hmap bmap结构体 map的桶 Map扩容
  • 【使用JMeter 对Web服务器压力测试】

    自己使用JMeter测试百度心得 主要用到了 1 添加线程组 一个测试的线程容器 可设置线程个数 循环次数 所有线程启动一次的周期时间 2 在线程组 中添加sample gt http request 一个请求的范式 可以设置请求的url和
  • 关于单个模型切片

    这几天鼓捣了模型切片 遇到好多坑 特此记录 1 切片切什么 切的是模型 模型可以通过Nodevisitor转换为geode 而geode可以分为若干drawable 切的就是这些drawable 因此 要node gt accept vis
  • APP更新机制-静默更新、弱更新、强更新/portal是什么?

    APP更新机制 静默更新 弱更新 强更新 一 静默更新 1 1 功能解释 静默更新就是手机系统悄悄的更新 一般会是用户在应用市场勾选了Wifi状态下 闲时自动更新功能后 手机系统会按它的规则帮用户自动更新APP 这个功能和用户手动去应用市场
  • vue 校验表单报错:model is required for validate to wor

    参考https blog csdn net qq 45376290 article details 107346110 1 属性绑定错误 确保绑定的是 model 而不是v model model 是element ui 里面的一个 属性

随机推荐

  • 压缩感知 热身实验 OMP算法Python实现(详细代码注释)

    压缩感知实验 OMP算法Python实现 一维图信号重建 Experiment Result 一维图信号重建 coding utf 8 Created on Wed Sep 23 21 46 43 2020 author chen impo
  • GetLastError返回值及其含义

    GetLastError返回的值通过在api函数中调用SetLastError或SetLastErrorEx设置 函数并无必要设置上一次错误信息 所以即使一次GetLastError调用返回的是零值 也不能担保函数已成功执行 只有在函数调用
  • dhcp和vrrp技术

    目录 引言 一 DHCP工作原理与配置 1 DHCP 动态主机配置协议 2 DHCP工作原理 3 dhcp配置 同网段 4 dhcp中继 不同同网段 5 例子 二 vrrp作用配置 1 vrrp作用 2 vrrp配置 总结 引言 我们每台电
  • Android系统裁剪:手把手教你如何进行系统裁剪

    内容有点长 想系统裁剪 这篇文章足矣 看完会对系统裁剪及系统有更深的认识 前言 android系统裁剪优化一直是各个厂商定制产品的关键步骤 包括浅层次的去除不必要的apk android apk裁剪定制 和深层次的裁剪整个编译系统和框架层
  • 跨境外贸必看

    Pinterest是一个海外图片社交分享网站 Pinterest与国内小红书的营销方式非常相似 它允许我们定位特定的人群 兴趣甚至位置 借助庞大的用户群体和针对特定受众的能力 它成为外贸与跨境电商的推广营销利器 越来越多的跨境玩家利用它进行
  • 虚拟机opnsense作为dhcp服务器,在OPNsense中,通过主机名或域名访问内部设备

    在局域网环境中 使用域名来访问防火墙或其他设备比使用IP地址更容易让人使用 根据需要 我们可以只使用主机名 服务器 来访问设备上的各种服务 例如文件共享 它比包含域名的名称要短 如果打算运行Web服务器或运行具有Web界面的软件 则可能需要
  • Faster RCNN训练自己的数据集【傻瓜式教程】

    一 下载源码 本文采用的源码是 https github com dBeker Faster RCNN TensorFlow Python3 二 配置环境 由于本文是小白教程 光写几个环境怕有人配置不好或者配置版本搞乱 Faster RCN
  • ELK之Elasticsearch常用DSL语句(kibana语句)

    DSL 是什么 DSL Domain Specific Language 的缩写 中文翻译为领域特定语言 Wikipedia 对于 DSL 的定义还是比较简单的 A specialized computer language designe
  • 8.2.3-elasticsearch内置分词器之keyword/pattern

    ES默认提供了八种内置的analyzer 针对不同的场景可以使用不同的analyzer 1 keyword analyzer 1 1 keyword类型及分词效果 keyword analyzer视字符串为一个整体不进行分词处理 测试key
  • Java多线程编程基础篇(二)-多线程同步关键字

    一 多线程同步关键字 synchronized 1 概念 synchronized保证方法或者代码块在运行时 同一时刻只有一个方法可以进入到临界区 同时它还可以保证共享变量的内存可见性 当多个并发线程访问同一个对象object中的同步代码块
  • mysql 用户流失_利用SQL对平台用户行为进行分析

    一 提出问题 1 平台的用户流失情况是怎样的 2 造成该种流失情况是原因是什么 二 理解数据 1 数据来源 https tianchi aliyun com dataset dataDetail dataId 649 userId 1 本数
  • svn 新建文件不能直接提交终于解决了

    preface 一直在做的一个项目最近要上线了 之前一直遗留了一个 svn 问题 新创建的文件不能 直接在外层目录直接提交 只能一级一级 的先添加目录 然后添加目录中的文件 最后在外层目录提交 因为写得东西太多 总不可避免的 会有遗漏提交
  • c++堆栈类模板实现

    最近在复习数据结构 涉及到堆栈的实现 通过类模板可以使堆栈的存储数据类型更为灵活 下面是堆栈的实现代码 ifndef MYSTACK H define MYSTACK H include
  • Spring-Boot-MainApplication 类文件的位置

    搭建 SpringBoot 项目时有一个主程序入口类 这个 MainApp 类必须在放在整个项目的最根目录 Spring 在扫描注解的时候是扫描这个文件所在包以下的所有Class 如果其他类放在了高于这个类或其他目录下就会扫描不到 impo
  • [思考进阶]01 如何克服自己的无知?

    除了要提升自己的技术能力 思维的学习和成长也非常非常重要 特推出此 思考进阶 系列 进行刻意练习 从而提升自己的认知 有段时间我特别喜欢研究一些定律和法则 比如 熵增定律 懒蚂蚁效应 蝴蝶效应 吸引力法则 多米诺效应等等 大部分都是看书或者
  • c8051f120的spi应用总结

    spi应用总结 主控程序中SPI通信的铁电 想用FEDR45V100A 替代FM25V10 发现铁电存储时波形正常 但读出数据都为0xff 还在查找问题中 一 主控界面 设置 gt 管理员设置 gt 5网络参数设置 gt 4导出参数 5导入
  • 高并发,你真的理解透彻了吗?

    高并发 几乎是每个程序员都想拥有的经验 原因很简单 随着流量变大 会遇到各种各样的技术问题 比如接口响应超时 CPU load升高 GC频繁 死锁 大数据量存储等等 这些问题能推动我们在技术深度上不断精进 在过往的面试中 如果候选人做过高并
  • 已启用Azure Arc的Kubernetes第2部分:添加安全性和监视

    目录 设置Microsoft Defender for Clound 启用Microsoft Defender 安装Microsoft Defender for Kubernetes Cluster Extension 设置Azure Mo
  • android 音乐波动动画

    需求 在播放音乐的时候 随机产生不规律动画 下载地址 http download csdn net detail qq 28195645 9700355 自定义音乐波动控件 package com sun audioplayingwave
  • cocos creator v3.6版本使用Intersection2D模块的circleCircle方法

    在cocos creator v3版本中Intersection2D模块的circleCircle方法可以用来检测两个圆形是否相交 该方法可以实现的功能有 cocos creator吸铁石实现 cocos creator物体在固定位置吸附