C#判断点是否在矩形内

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家人工智能学习网站

前言:

大家好,我是上位机马工,硕士毕业4年年入40万,目前在一家自动化公司担任软件经理,从事C#上位机软件开发8年以上!我们在C#开发中经常需要对平面中的坐标位置进行一些判断,比如判断坐标点是否在某个矩形范围内,本文就是介绍如何实现这个功能。

1、如何判断点是否在矩形内

下面的代码首先声明一个x=0,y=0,长度和宽度都是100的矩形。

1)point1 的坐标是(0,0)在矩形的边缘,所以属于矩形内;

1)point2的坐标是(50,50)在矩形内,所以属于矩形内;

1)point1 的坐标是(-1,1)在矩形的外部,所以属于不属于矩形内;

csharp 复制代码
 Rectangle rectangle = new Rectangle(0, 0, 100, 100);
            Point point1 = new Point(0, 0);
            if (rectangle.Contains(point1))
            {
                Console.WriteLine("point1在矩形中");
            }
            else
            {
                Console.WriteLine("point1不在矩形中");
            }

            Point point2 = new Point(50, 50);
            if (rectangle.Contains(point2))
            {
                Console.WriteLine("point2在矩形中");
            }
            else
            {
                Console.WriteLine("point2不在矩形中");
            }

            Point point3 = new Point(-1, 1);
            if (rectangle.Contains(point3))
            {
                Console.WriteLine("point3在矩形中");
            }
            else
            {
                Console.WriteLine("point3不在矩形中");
            }

看输出结果:

csharp 复制代码
point1在矩形中
point2在矩形中
point3不在矩形中

最终的结果和我们预想的一致,只有point3不在矩形中。

作者介绍

马工2017年硕士毕业,一直从事上位机软件开发工作,在我工作的第四年年薪突破了40万+,为了帮助跟我一样从底层出身的上位机软件工程师早日达到高级工程师的水平,早日找到30万+的工作,我根据多年项目经验,总结出了一系列可直接用于项目的C#上位机实战教程推荐给大家,目前在CSDN已经超过一千人订阅,如果你不甘贫庸,想像我一样早日拿到高薪,马工强烈推荐你早日学这套教程,雷军曾说这个世界上有99%的问题别人都遇到过,你要做的不是闷头干!而是找这个领域的专家问一下,这是最快速提升自己的方法!

年入30万+C#上位机实战必备教程推荐(点击下方链接即可访问文章)

1、《C#串口通信从入门到精通》

2、《C#与PLC通信从入门到精通 》

3、《C# Modbus通信从入门到精通》

4、《C#Socket通信从入门到精通 》

5、《C# MES通信从入门到精通》

6、《winform控件从入门到精通》

相关推荐
laimaxgg1 分钟前
数据结构B树的实现
开发语言·数据结构·c++·b树·算法
阳光_你好1 小时前
解决用git bash终端 tail -f 命令查看日志中文乱码问题
开发语言·git·bash
nlog3n1 小时前
Java 原型模式 详解
java·开发语言·原型模式
观无1 小时前
关于跨域与.NET的处理方案
c#
全栈小51 小时前
【C#】.net core 6.0 依赖注入常见问题之一,在构造函数使用的类,都需要注入到容器里,否则会提示如下报错,让DeepSeek找找原因,看看效果
c#·.netcore·依赖注入·deepseek
能来帮帮蒟蒻吗2 小时前
Go语言学习(15)结构体标签与反射机制
开发语言·笔记·学习·golang
陈皮话梅糖@4 小时前
使用 Provider 和 GetX 实现 Flutter 局部刷新的几个示例
开发语言·javascript·flutter
hvinsion5 小时前
基于PyQt5的自动化任务管理软件:高效、智能的任务调度与执行管理
开发语言·python·自动化·自动化任务管理
Aphelios3805 小时前
Java全栈面试宝典:线程机制与Spring IOC容器深度解析
java·开发语言·jvm·学习·rbac
qq_529835355 小时前
装饰器模式:如何用Java打扮一个对象?
java·开发语言·装饰器模式