mirror of
https://github.com/plexusorg/Plex-FAWE.git
synced 2024-12-23 01:37:37 +00:00
Did some minor Vector optimization.
This commit is contained in:
parent
2f71a32f64
commit
da4480ab49
@ -1579,6 +1579,7 @@ public class EditSession {
|
||||
public int simulateSnow(Vector pos, int radius)
|
||||
throws MaxChangedBlocksException {
|
||||
int affected = 0;
|
||||
int radiusSq = (int)Math.pow(radius, 2);
|
||||
|
||||
int ox = pos.getBlockX();
|
||||
int oy = pos.getBlockY();
|
||||
@ -1589,7 +1590,7 @@ public class EditSession {
|
||||
|
||||
for (int x = ox - radius; x <= ox + radius; x++) {
|
||||
for (int z = oz - radius; z <= oz + radius; z++) {
|
||||
if ((new Vector(x, oy, z)).distance(pos) > radius) {
|
||||
if ((new Vector(x, oy, z)).distanceSq(pos) > radiusSq) {
|
||||
continue;
|
||||
}
|
||||
|
||||
|
@ -446,6 +446,18 @@ public class Vector {
|
||||
Math.pow(pt.z - z, 2));
|
||||
}
|
||||
|
||||
/**
|
||||
* Get the distance away from a point, squared.
|
||||
*
|
||||
* @param pt
|
||||
* @return distance
|
||||
*/
|
||||
public double distanceSq(Vector pt) {
|
||||
return Math.pow(pt.x - x, 2) +
|
||||
Math.pow(pt.y - y, 2) +
|
||||
Math.pow(pt.z - z, 2);
|
||||
}
|
||||
|
||||
/**
|
||||
* Checks to see if a vector is contained with another.
|
||||
*
|
||||
|
Loading…
Reference in New Issue
Block a user