Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/magento/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 检查是否在特定区域内_Java_Minecraft - Fatal编程技术网

Java 检查是否在特定区域内

Java 检查是否在特定区域内,java,minecraft,Java,Minecraft,**由于混淆,重新编辑了问题以使其更有意义 假设有一个坐标平面,其尺寸如下: X:0-1000 Z:0-1000 我们将平面分成十个区域,如下所示: 区域1: X:0-99 Z:0-99 区域2: X:100-199 Z:100-199 等等 然后,我们生成三个随机数,例如: X:56 Z:38 检查坐标所在区域的最有效方法是什么? 这看起来像是使用一种阻塞方法,例如: if(X < 100 && Z < 100){ regionA(); } else if

**由于混淆,重新编辑了问题以使其更有意义

假设有一个坐标平面,其尺寸如下:

X:0-1000 Z:0-1000

我们将平面分成十个区域,如下所示:

区域1:

X:0-99 Z:0-99

区域2:

X:100-199 Z:100-199

等等

然后,我们生成三个随机数,例如:

X:56 Z:38

检查坐标所在区域的最有效方法是什么?

这看起来像是使用一种阻塞方法,例如:

if(X < 100 && Z < 100){
     regionA();
} else if(X < 200 && Z < 200){
     regionB();
}
//and so on..
if(X<100&&Z<100){
区域();
}否则如果(X<200&&Z<200){
区域b();
}
//等等。。
效率会非常低

是否有其他方法检查坐标位于哪个区域

另一个例子是:


根据纬度和经度,你怎么知道坐标在哪个国家(或者在海洋中,等等?

好吧,因为每个区域,也就是说,都有100个区块宽,我们可以使用坐标中的数百个值。我假设你把飞机分成100x100个区域

int x; //Your coordinates here
int z;

double regionx = math.ceil(x/100);
double regionz = math.ceil(z/100);
你可以用
regionx.intValue()
regionz.intValue()
如果需要返回一个int值

如果它有三个维度,它不是一个平面,它是一个立方体,就像你分解它一样,你的随机数很可能不会落在10个较小的块中。你只会在一个1000单位的一维区域中占据所有可能的值,该区域有10个分区(线)。2维需要100个分区(正方形/平面),3维需要1000个分区(立方体)来填充整个空间。例如,0、0、101在哪里结束?还有0,0,201?还有100,0201?等等。我的问题与区域划分无关,我的问题是找到坐标所在区域的最佳方法是什么?@user3344572问题是您的区域划分不清楚。从您列出的内容来看,听起来您只使用了对角线区域。您需要更全面地解释区域划分,因为听起来人类列出的区域似乎不存在。