游戏开发论坛

 找回密码
 立即注册
搜索
查看: 5977|回复: 9

如何判断一个平面圆形和一个平面正方形相交?

[复制链接]

12

主题

26

帖子

26

积分

注册会员

Rank: 2

积分
26
发表于 2010-4-15 09:05:00 | 显示全部楼层 |阅读模式
我有一个圆的中心点坐标和它的半径, 还有正方形的4个角的坐标点 怎么判断圆是否有部分和正方形相交呢?


vector3 v(0.0, 0.0, 0.0) 圆心点
radius = 5.0

正方形4个角
vector3 a1,a2,a3,a4

32

主题

1259

帖子

1351

积分

金牌会员

Rank: 6Rank: 6

积分
1351
发表于 2010-4-15 11:18:00 | 显示全部楼层

Re:如何判断一个平面圆形和一个平面正方形相交?

正方形任意顶点在圆内 || 圆心在正方形内

12

主题

26

帖子

26

积分

注册会员

Rank: 2

积分
26
 楼主| 发表于 2010-4-15 11:53:00 | 显示全部楼层

Re:如何判断一个平面圆形和一个平面正方形相交?

正方形任意顶点在圆内 || 圆心在正方形内
感觉消耗很大啊? 要遍历正方形顶点?

32

主题

1259

帖子

1351

积分

金牌会员

Rank: 6Rank: 6

积分
1351
发表于 2010-4-15 12:15:00 | 显示全部楼层

Re:如何判断一个平面圆形和一个平面正方形相交?

才4个顶点也叫遍历啊

12

主题

26

帖子

26

积分

注册会员

Rank: 2

积分
26
 楼主| 发表于 2010-4-15 13:53:00 | 显示全部楼层

Re:如何判断一个平面圆形和一个平面正方形相交?

貌似有问题啊

如果圆比较小, 和正方形相交且圆心也不在正方形内, 那4个顶点判定也不正确吧?

11

主题

1238

帖子

1782

积分

金牌会员

Rank: 6Rank: 6

积分
1782
发表于 2010-4-15 13:54:00 | 显示全部楼层

Re:如何判断一个平面圆形和一个平面正方形相交?

圆和四方形是在一个平面上还是在三维空间?

11

主题

1238

帖子

1782

积分

金牌会员

Rank: 6Rank: 6

积分
1782
发表于 2010-4-15 13:56:00 | 显示全部楼层

Re:如何判断一个平面圆形和一个平面正方形相交?

如果两者在一个平面上, 首先计算出正方形的主轴方向,然后把圆心变换到以正方形中心为原点,主轴为轴的坐标系内,这样就可以把正方形看成轴对齐的了,接下来就不用多说了吧?

12

主题

26

帖子

26

积分

注册会员

Rank: 2

积分
26
 楼主| 发表于 2010-4-15 14:22:00 | 显示全部楼层

Re:如何判断一个平面圆形和一个平面正方形相交?

O口
这2个就是轴对其的啊, 大哥, 我就想知道你不多说的那段

5

主题

755

帖子

757

积分

高级会员

Rank: 4

积分
757
发表于 2010-4-15 16:16:00 | 显示全部楼层

Re:如何判断一个平面圆形和一个平面正方形相交?

确定是在一个坐标系下的情况。
判断4个顶点到圆心的距离,是不是是不是小于半径。

11

主题

1238

帖子

1782

积分

金牌会员

Rank: 6Rank: 6

积分
1782
发表于 2010-4-15 16:18:00 | 显示全部楼层

Re:如何判断一个平面圆形和一个平面正方形相交?

和AABB和球检测是一样的嘛! 1.检测正方形四个顶点是否在圆中.2.以两条主轴为分离轴进行分离轴测试
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-6-12 04:21

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表