首页 > 其他分享 >摇杆

摇杆

时间:2023-03-13 19:33:07浏览次数:30  
标签:rocker bar Vector2 height 摇杆 public rect

 

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
/// <summary>
/// 摇杆
/// </summary>
public class Rocker : MonoBehaviour,IDragHandler,IEndDragHandler
{
    public static Vector2 offset;//保存移动距离和方向
    public RectTransform bar;//小圆
    public RectTransform rocker;//大圆
    public float r;//大圆半径
    public float r1;//小圆半径

    public void OnDrag(PointerEventData eventData)
    {
        Vector2 pos = eventData.position - rocker.anchoredPosition;
        bar.anchoredPosition = Vector2.ClampMagnitude(pos,r-r1);
        offset = bar.anchoredPosition / r;
    }

    public void OnEndDrag(PointerEventData eventData)
    {
        bar.anchoredPosition = Vector2.zero;
        offset = Vector2.zero;
    }

    // Start is called before the first frame update
    void Start()
    {
        r = rocker.rect.width < rocker.rect.height ? rocker.rect.width / 2 : rocker.rect.height / 2;
        r1 = bar.rect.width < bar.rect.height ? bar.rect.width/2 : bar.rect.height/2;
    }
}

 

标签:rocker,bar,Vector2,height,摇杆,public,rect
From: https://www.cnblogs.com/z816/p/17212554.html

相关文章

  • 手写摇杆
     usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;usingUnityEngine.EventSystems;///<summary>///写的是一个摇杆的代码///步骤和......
  • 简写摇杆
    usingSystem.Collections;usingSystem.Collections.Generic;usingUnityEngine;usingUnityEngine.EventSystems;///<summary>///写的是一个摇杆的代码///步骤和使用/......
  • 【MATLAB习题】双摇杆机构的运动学分析
    1.双摇杆机构概述双摇杆机构的判别方法:最长杆长度+最短杆长度≤其他两杆长度之和,连杆(机架的对杆)为最短杆时。如果最长杆长度+最短杆长度>其他两杆长度之和,......
  • 【iOS-cocos2d-X 游戏开发之十二】自定义Cocos2dx摇杆(增强Joystick),增加摇杆跟随用
    本站文章均为​​ 李华明Himi ​​​原创,转载务必在明显处注明对于虚拟摇杆在游戏开发中必不可少,Android方面的是由Himi自己实现封装的,大家可以移步到这里查看详细实现机......
  • #打卡不停更# HarmonyOS - 基于ArkUI(JS)实现虚拟摇杆组件
    作者:杨尚晓前言虚拟摇杆在移动端游戏中是最常见看的,用来实现游戏中的精灵移动。本案例中使用jspai中的div和image组件来实现的虚拟摇杆组件,然后监听touch事件获取滑动的方......
  • 【工具类】Cocos 虚拟摇杆
    版本:2.4.10 之前用Egret时写过一个虚拟摇杆Egret虚拟摇杆 ,这里用Cocos实现。 一演示效果 二 摇杆原理和Egret的虚拟摇杆实现原理是一样的  三虚拟......