判断坐标点是否在矩形区域内,在线等!倾分 跪等

oicq111 2013-07-04 05:50:10
矩形区域1,2,3,4 四个坐标分别为:123.123,45.234;124,234,463...

通过简单的坐标大小比较不对,请问高手指点正确算法!谢谢神人
...全文
846 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
oicq111 2013-07-12
  • 打赏
  • 举报
回复
要判断出哪边界呢?
hsfzxjy 2013-07-08
  • 打赏
  • 举报
回复
引用 12 楼 lm_whales 的回复:
[quote=引用 11 楼 HSFZXJY 的回复:] [quote=引用 10 楼 lm_whales 的回复:] [quote=引用 9 楼 HSFZXJY 的回复:] [quote=引用 8 楼 lm_whales 的回复:] TPoint;TRect 都是整型 你的坐标都是浮点型,要做某种比例变换,和四舍五入之类的处理,然后才能用PtInRect 不过这PtInRect,在delphi也应该是,库函数(内部函数才对),应该不需要自己定义了。
在Windows里[/quote] delphi 的Linux 版本应该也是一样处理的吧![/quote] 我说在Windows单元中。。在Linux下应该也有相同功能的库。。[/quote] 抱歉你说的太简单了,没有理解![/quote] 没事,就当我没说。。我的意思就是 delphi的系统库里应该有这个函数。。
lm_whales 2013-07-08
  • 打赏
  • 举报
回复
引用 11 楼 HSFZXJY 的回复:
[quote=引用 10 楼 lm_whales 的回复:] [quote=引用 9 楼 HSFZXJY 的回复:] [quote=引用 8 楼 lm_whales 的回复:] TPoint;TRect 都是整型 你的坐标都是浮点型,要做某种比例变换,和四舍五入之类的处理,然后才能用PtInRect 不过这PtInRect,在delphi也应该是,库函数(内部函数才对),应该不需要自己定义了。
在Windows里[/quote] delphi 的Linux 版本应该也是一样处理的吧![/quote] 我说在Windows单元中。。在Linux下应该也有相同功能的库。。[/quote] 抱歉你说的太简单了,没有理解!
hsfzxjy 2013-07-08
  • 打赏
  • 举报
回复
引用 10 楼 lm_whales 的回复:
[quote=引用 9 楼 HSFZXJY 的回复:] [quote=引用 8 楼 lm_whales 的回复:] TPoint;TRect 都是整型 你的坐标都是浮点型,要做某种比例变换,和四舍五入之类的处理,然后才能用PtInRect 不过这PtInRect,在delphi也应该是,库函数(内部函数才对),应该不需要自己定义了。
在Windows里[/quote] delphi 的Linux 版本应该也是一样处理的吧![/quote] 我说在Windows单元中。。在Linux下应该也有相同功能的库。。
lm_whales 2013-07-08
  • 打赏
  • 举报
回复
引用 9 楼 HSFZXJY 的回复:
[quote=引用 8 楼 lm_whales 的回复:] TPoint;TRect 都是整型 你的坐标都是浮点型,要做某种比例变换,和四舍五入之类的处理,然后才能用PtInRect 不过这PtInRect,在delphi也应该是,库函数(内部函数才对),应该不需要自己定义了。
在Windows里[/quote] delphi 的Linux 版本应该也是一样处理的吧!
hsfzxjy 2013-07-08
  • 打赏
  • 举报
回复
引用 8 楼 lm_whales 的回复:
TPoint;TRect 都是整型 你的坐标都是浮点型,要做某种比例变换,和四舍五入之类的处理,然后才能用PtInRect 不过这PtInRect,在delphi也应该是,库函数(内部函数才对),应该不需要自己定义了。
在Windows里
lm_whales 2013-07-08
  • 打赏
  • 举报
回复
TPoint;TRect 都是整型 你的坐标都是浮点型,要做某种比例变换,和四舍五入之类的处理,然后才能用PtInRect 不过这PtInRect,在delphi也应该是,库函数(内部函数才对),应该不需要自己定义了。
虎子8 2013-07-08
  • 打赏
  • 举报
回复
6楼正解 这是一个逻辑问题 点在矩形中间 那就是,x,y坐标都不能超出矩形范围 rect.left<x<rect.right rect.bottom<y<rect.top
hsfzxjy 2013-07-06
  • 打赏
  • 举报
回复

function PtInRect(pt: TPoint;rect: TRect): boolean;
begin
  result := (pt.X > rect.Left) and (pt.X < rect.Right) and (pt.Y < rect.Bottom) and (pt.Y > rect.Top);
end;
oicq111 2013-07-05
  • 打赏
  • 举报
回复
是空间坐标!大师,你能否留个QQ啊,关注你多时了 !
sololie 2013-07-04
  • 打赏
  • 举报
回复
还不知道它说的坐标是不是鼠标坐标呢
一如当初 2013-07-04
  • 打赏
  • 举报
回复
Windows.PtInRect()
sololie 2013-07-04
  • 打赏
  • 举报
回复
贴你的代码来看看

16,748

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧