找回密码
 点一下
查看: 1821|回复: 7

求如何确定几个圆内的随机坐标?

[复制链接]
发表于 2011-7-28 18:54:45 | 显示全部楼层 |阅读模式
范围圆心坐标为(X2,Y2),半径为R,点数量为s..求教..
发表于 2011-7-28 19:14:47 | 显示全部楼层
两个随机实数解决问题……
一个随机角度angle,范围0-360
一个随机半径r,范围0-R
设置随机点point为从(X2,Y2),距离为r,角度为angle处……
回复

使用道具 举报

发表于 2011-7-28 19:16:43 | 显示全部楼层
楼上正解!
回复

使用道具 举报

发表于 2011-7-28 21:10:21 | 显示全部楼层
lss的做法虽然简单,但会向圆心密集。如果要按面积平均的话,可以采用以下算法:
1,取随机实数r(0~R)和a(0~R)
2,如果a>r,交换两数
3,angle=360*a/r
4,之后同lss
回复

使用道具 举报

发表于 2011-7-28 21:20:04 | 显示全部楼层
好吧,要均匀,还有个思路……
先创建个矩形区域,然后矩形区域随机点,判断点到矩形中心的距离,大于R就忽略,重新建……(不知道会不会出现怎么也不能建到圆里而导致的循环卡死……)
回复

使用道具 举报

发表于 2011-7-28 21:29:22 | 显示全部楼层
引用第4楼lo于2011-07-28 21:20发表的  :
好吧,要均匀,还有个思路……
先创建个矩形区域,然后矩形区域随机点,判断点到矩形中心的距离,大于R就忽略,重新建……(不知道会不会出现怎么也不能建到圆里而导致的循环卡死……)
有几率出现超过字节码限制导致触发执行失败。。不过几率大约在10^-10000数量级。。
回复

使用道具 举报

发表于 2011-7-28 21:36:58 | 显示全部楼层
看来还是可行的……还有其他思路么?
ls的注册时间比我晚一天……可是都没怎么看到过呢……
回复

使用道具 举报

发表于 2011-7-28 21:40:01 | 显示全部楼层
引用第6楼lo于2011-07-28 21:36发表的  :
看来还是可行的……还有其他思路么?
ls的注册时间比我晚一天……可是都没怎么看到过呢……  
万年潜水,今天无聊。。。
我的帖子嘛,主要在jass区上次活动里。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-12-28 04:14 , Processed in 0.036331 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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