Unity 实现UGUI 简单拖拽吸附

获取鼠标当前点击的UI

if(RectTransformUtility.RectangleContainsScreenPoint(rectTransform, Input.mousePosition))
{return rectTransform.gameObject;
}

拖拽

在Update 中根据鼠标位置实时更新拖拽的图片位置。 

itemDrag.transform.position = Input.mousePosition;

判断UI是否重叠 

松开鼠标时,通过Rect.Overlaps(Rect) 判断两个UI是否重叠。

画矩形

Vector3[] fourCorner = new Vector3[4];
rectTransform.GetWorldCorners(fourCorner);
Vector2 rectRange = new Vector2(Mathf.Abs(fourCorner[2].x - fourCorner[0].x), Mathf.Abs(fourCorner[2].y - fourCorner[0].y));
return new Rect(fourCorner[0], rectRange);

判断 

rectAdsorb.Overlaps(rectDrag)
或
rectDrag.Overlaps(rectAdsorb)

吸附 

根据可吸附图片的位置设定拖拽图片的位置。

itemDrag.transform.SetParent(itemAdsorb.transform);
itemDrag.transform.localPosition = Vector3.zero;

效果

拓展 

Unity3D 随机颜色(RGB/HSV)_random.colorhsv()-CSDN博客文章浏览阅读5.7k次,点赞2次,收藏20次。Unity3D 随机颜色(RGB/HSV)前言 Unity中颜色这块儿有RGB模式和HSV模式,之前大多数用的都是RGB模式,对于颜色这块儿也没有详细的去了解。后来项目涉及到,要图片饱和度一定,且可以随机变换颜色,如下动图效果(使用RGB模式)。但是这样改的话,R、G、B三个值都在变化,不好确保它饱和度不变,只变颜色。所以,就想着用HSV模式试试看, 把颜色面板的RGB模式切换为HSV模式(如下图)..._random.colorhsv()https://blog.csdn.net/WenHuiJun_/article/details/119057959

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/372144.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《安全行业大模型技术应用态势发展报告(2024)》

人工智能技术快速迭代发展,大模型应用场景不断拓展,随着安全行业对人工智能技术的应用程度日益加深,大模型在网络安全领域的应用潜力和挑战逐渐显现。安全行业大模型技术的应用实践不断涌现,其在威胁检测、风险评估和安全运营等方…

秋招突击——7/5——复习{}——新作{跳跃游戏II、划分字母区间、数组中的第K个大的元素(模板题,重要)、前K个高频元素}

文章目录 引言正文贪心——45 跳跃游戏II个人实现参考实现 划分字母区间个人实现参考实现 数组中的第K个最大元素个人实现参考做法 前K个高频元素个人实现参考实现 总结 引言 今天就开始的蛮早的,现在是九点多,刚好开始做算法,今天有希望能够…

方圆资源网,方圆资源官网

在当今这个信息化高速发展的时代,方圆资源网络已成为推动社会进步、促进经济发展的重要力量。方圆资源网不仅汇聚了海量的信息资源,更为我们提供了一个高效、便捷的信息交流平台。本文旨在详细介绍资源网的概念、特点、功能以及其在现代社会中的重要意义…

理解算法复杂度:空间复杂度详解

引言 在计算机科学中,算法复杂度是衡量算法效率的重要指标。时间复杂度和空间复杂度是算法复杂度的两个主要方面。在这篇博客中,我们将深入探讨空间复杂度,了解其定义、常见类型以及如何进行分析。空间复杂度是衡量算法在执行过程中所需内存…

【python爬虫实战】进阶天气虫虫(过程复盘 心得分享)

程序设计过程里的一些心得: 0. 规模较大的程序,往往都是以更小的功能块搭建起来的。如此,为了提升总体程序的构建效率, 笔者发现分“两步走”会比较高效: A. 遇到需要反复调试的功能块,可先在另一程序中逐…

植物大战僵尸融合嫁接版 MAC 版本下载安装详细教程

继植物大战僵尸杂交版火了之后,PVZ改版可谓是百花齐放,最近又有一个非常好玩的模式被开发出来了,他们称为《植物大战僵尸融合嫁接版》 该版本并没有对植物卡牌做改动,而是可以将任意两种植物叠放到一起进行融合,产生新…

玲珑大爆料!deepin Meetup(上海站)议程抢先看!

Linux软件生态正迎来一场革命,随着软件数量的激增,传统的包管理系统逐渐暴露出依赖性强、兼容性差、安全性不足等问题。“玲珑”是一种新型的独立包管理工具集,通过先进的隔离技术和分层管理,为应用提供了一个安全、稳定、高效的运…

202488读书笔记|《365日创意文案》——无聊的 到底是这世间, 还是自己?懂得忘却的人才能前进

202488读书笔记|《365日创意文案》——无聊的 到底是这世间, 还是自己?懂得忘却的人才能前进 1月2月3月4月5月6月7月8月9月10月11月12月 《365日创意文案》WRITES PUBLISHING,一些日常,是烟火,也是幸福的印记。 当下也…

IT之家最新科技热点 | 小米 AI 研究院开创多模态通用模型

人不走空 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌赋:斯是陋室,惟吾德馨 目录 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌…

Python编程学习笔记(1)--- 变量和简单数据类型

1、变量 在学习编程语言之前,所接触的第一个程序,绝大多数都是: print("Hello world!") 接下来尝试使用一个变量。在代码中的开头添加一行代码,并对第二行代码进行修改,如下: message "…

3 个令人惊艳的 AI 开源工具,诞生了!

大家好,今天继续聊聊 AI 科技圈发生的那些事。分享几个最新好玩、实用的AI工具。更多最新技术,文末加入我们。 LivePortrait LivePortrait:一款可以轻松让一幅肖像栩栩如生的工具 它可以精准操控眼睛和嘴唇动作: 让静态照片变为…

python特征相关性可视化分析 - sns.pairplot

seaborn 是一个基于 matplotlib 的 Python 数据可视化库,提供了更高层次的接口来绘制有吸引力的统计图形。pairplot 是 seaborn 中的一个函数,用于绘制数据集中多个变量之间的成对关系图。 基本用法 pairplot 函数可以快速地对数据集中的所有数值变量进…

【AutoencoderKL】基于stable-diffusion-v1.4的vae对图像重构

模型地址:https://huggingface.co/CompVis/stable-diffusion-v1-4/tree/main/vae 主要参考:Using-Stable-Diffusion-VAE-to-encode-satellite-images sd1.4 vae 下载到本地 from diffusers import AutoencoderKL from PIL import Image import torch import to…

第二证券股市资讯:深夜!突然暴涨75%!

一则重磅收买引发医药圈轰动。 北京时间7月8日晚间,美股开盘后,美国生物制药公司Morphic股价一度暴升超75%。音讯面上,生物医药巨子礼来公司官宣,将以57美元/股的价格现金收买Morphic,较上星期五的收盘价溢价79%&…

Yolov10训练,转化onnx,推理

yolov10对于大目标的效果好,小目标不好 一、如果你训练过yolov5,yolov8,的话那么你可以直接用之前的环境就行 目录 一、如果你训练过yolov5,yolov8,的话那么你可以直接用之前的环境就行 二、配置好后就可以配置文件…

身边的故事(十五):阿文的故事:再消失

物镜人非,沧海桑田。像我们这些普通的凡人,哪有什么试错的机会,每走一步都是如履薄冰,小心谨慎,错一步可能就会万劫不复。唉,如果...唉...哪有什么如果... 阿文的房子很快装修完成,入新房那天就…

提高Python爬虫的匿名性:代理ip的配置策略

在当今,网络数据采集作为获取行业信息的重要手段,尤其在竞争激烈的商业环境中,Python作为一种强大的编程语言,广泛应用于开发各种数据爬虫来自动化地抓取网络信息。然而,网站普遍采用防护措施,即使我们合规…

用QFramework重构飞机大战(Siki Andy的)(下01)(06-0? 游戏界面及之后的所有面板)

GitHub // 官网的 全民飞机大战(第一季)-----框架设计篇(Unity 2017.3) 全民飞机大战(第二季)-----游戏逻辑篇(Unity 2017.3) 全民飞机大战(第三季)-----完善…

【Java14】构造器

Java中的构造器在创建对象(实例)的时候执行初始化。Java类必须包含一个或一个以上的构造器。 Java中的构造器类似C中的构造函数。 Java中对象(object)的默认初始化规则是: 数值型变量初始化为0;布尔型变量…