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

在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
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值