首页 > 其他分享 >unity 从list中获取最近的坐标 / 获取最接近的角度(数值)

unity 从list中获取最近的坐标 / 获取最接近的角度(数值)

时间:2024-07-03 17:30:27浏览次数:14  
标签:angleList Vector3 angle closest float list 获取 unity

/// <summary>
        /// 从列表points中获取距离targetPoint最近的坐标
        /// </summary>
        /// <param name="points"></param>
        /// <param name="targetPoint"></param>
        /// <returns></returns>
        public Vector3 FindClosestPoint(List<Vector3> points, Vector3 targetPoint)
        {
            Vector3 closestPoint = Vector3.zero;
            float closestDistance = Mathf.Infinity;

            foreach (Vector3 point in points)
            {
                float distance = Vector3.Distance(point, targetPoint);

                if (distance < closestDistance)
                {
                    closestDistance = distance;
                    closestPoint = point;
                }
            }

            return closestPoint;
        }
/// <summary>
        /// 获取_angleList中最接近angle的角度
        /// </summary>
        /// <param name="_angleList">所有正对按钮时的角度</param>
        /// <param name="_angle">rot当前的角度</param>
        /// <returns></returns>
        public float Closest(List<float> _angleList, float _angle)
        {
            float closest = _angleList[0];
            float difference = Mathf.Abs(closest - _angle);

            foreach (float item in _angleList)
            {
                float currentDifference = Mathf.Abs(item - _angle);
                if (currentDifference < difference)
                {
                    closest = item;
                    difference = currentDifference;
                }
            }

            return closest;
        }

 

标签:angleList,Vector3,angle,closest,float,list,获取,unity
From: https://www.cnblogs.com/lingLuoChengMi/p/18282252

相关文章

  • 【Unity】HoloLens2 开发日记
    2022/1/12第一天!START!配置环境微软官方教程:练习-导入和配置资源-Learn|MicrosoftDocsWindows10SDK地址:WindowsSDK-Windows应用开发(microsoft.com)MRTK(混合现实工具包):DownloadMixedRealityFeatureToolfromOfficialMicrosoftDownloadCenter......
  • 【Unity】EventTrigger各事件触发时机解释
    OnSelect():当鼠标按下了一个当前未在选中状态的UI时触发。如果一个UI已经被选中(成为焦点UI),那么再点击这个UI时,则不会再一次触发OnSelect。OnDeselect():在OnSelect()已经执行过之后,又选中了另外一个物体时,原有的物体就会触发OnDeselect(),取消选择。OnUpdateSelect():在......
  • 获取当前运行的终端大小
    方法shutil模块有一个方法.get_terminal_size,通过这个方法可以获取到当前运行的终端大小。比如:>>>importshutil>>>shutil.get_terminal_size()os.terminal_size(columns=195,lines=52)>>>shutil.get_terminal_size().columns195将终端窗口缩小再次运行,会得到对......
  • 使用qt 获取一张网络图片,并将这张图片显示在qml 上
    #include<QGuiApplication>#include<QQmlApplicationEngine>#include<QNetworkAccessManager>#include<QNetworkReply>#include<QUrl>#include<QImage>#include<QQuickImageProvider>classImageProvider:publicQQuickI......
  • lombard waitlist
    fromcurl_cffiimportrequestsfrompprintimportpprintimporttimedefsend_mail(mail):pprint(mail)headers={'accept':'*/*','accept-language':'zh-CN,zh;q=0.9','cache-c......
  • 课前准备---HD数据结合图像识别获取真实的空间单细胞级数据
    作者,EvilGeniusHD数据不同于Xenium,目前还是横屏竖直的一刀切数据分析模式,但是真实的细胞绝对不是如此分布的,那么实际分析中,2um的精度配合图像的信息,获取真实的细胞分布数据,就成了分析的必须。多说一句,分析的准确性和超前化也是公司对核心分析人员的核心要求。如下如,我们最......
  • thinkphp6 使用FFMpeg获取视频信息
    1.本地安装 FFMpeg,官网下载地址:https://ffmpeg.org/download.html#build-windows  解压后,把文件夹放到自定义目录,添加系统变量 2.安装依赖,composer.json添加"php-ffmpeg/php-ffmpeg":"^0.19.0",3.封装class类<?phpnamespaceapp\api\controller;useFFMpeg......
  • 主键Id自增,如何获取Id(Dapper)
    这里用的是Dapper,以前用EF的时候好像有用到过db.savechanges().但是项目中没有这个,所以用以下的方法去获取id背景:涉及到多表入库,需要获取主表的Id,所以用到了这个(timeFields 可以忽略)  ///<summary>///单个添加///</summary>///<typ......
  • nginx配置获取客户端的真实ip
    https://blog.csdn.net/superzhang6666/article/details/132901093 对于nginx获取客户端真实ip做个总结对于首层代理服务器,使用proxy_set_headerX-Forwarded-For$remote_addr;来将客户端IP赋值给X-Forwarded-For请求头对于非首层代理服务器,使用proxy_set_headerX-Forwarded......
  • [IOT2050 question] Unable to listen on http://127.0.0.1:1880/ 端口被占用错误
    1.背景第一次连接node-red的时候,一直出现错误Unabletolistenonhttp://127.0.0.1:1880/。如下:2.原因分析估计是早前利用iot2050setup小工具把node-red设置为开机自动启动项了,导致1880端口一直被占用。3.验证首先查看端口是否真的被占用,利用sudonetstat-ltup命......