【发布时间】:2016-04-15 17:16:38
【问题描述】:
我代表我的 2D 空间(考虑一个窗口),其中每个像素都显示为 2D 数组中的一个单元格。即 100x100 的窗口由相同尺寸的数组表示。
现在给定窗口中的一个点,如果我画一个半径为r 的圆,我想找到该圆中的所有点。
我想用side = 2*r 检查半径周围正方形区域中的每个点是否位于圆内。也许我会使用正常距离公式?
因此,可能如下:
for (x=center-radius ; x<center+radius ; x++){
for (y=center-radius ; y<center+radius; y++) {
if (inside) {
// Do something
}
}
}
它会达到我的目的吗?我可以让它更快吗?
【问题讨论】:
-
为了模拟 pi 数,在 xx+yy
-
用毕达哥拉斯定理判断当前“细胞”的距离是否在圆内。
标签: arrays performance algorithm optimization geometry