summaryrefslogtreecommitdiffhomepage
path: root/Reader.cpp
diff options
context:
space:
mode:
authorAki <please@ignore.pl>2022-05-17 19:36:15 +0200
committerAki <please@ignore.pl>2022-05-17 19:50:04 +0200
commit21341f788654cfc806778fa34d09885431083d76 (patch)
tree313cf15a37ed1f34b5807874a2a03ca8f421aeeb /Reader.cpp
parente9115c36c3580b209f7b53692deb52905125256e (diff)
downloadderelict-21341f788654cfc806778fa34d09885431083d76.zip
derelict-21341f788654cfc806778fa34d09885431083d76.tar.gz
derelict-21341f788654cfc806778fa34d09885431083d76.tar.bz2
Created a function for repeated distance calculations
Diffstat (limited to 'Reader.cpp')
-rw-r--r--Reader.cpp15
1 files changed, 4 insertions, 11 deletions
diff --git a/Reader.cpp b/Reader.cpp
index f5c8de3..f7c7ed6 100644
--- a/Reader.cpp
+++ b/Reader.cpp
@@ -1,11 +1,11 @@
#include "Reader.h"
-#include <cmath>
#include <vector>
#include "Grid.h"
#include "LongVector3.h"
#include "Source.h"
+#include "Utils.h"
#include "Wreck.h"
@@ -51,17 +51,10 @@ Reader::read(Source& source)
Grid&
find_grid_for(std::vector<Grid>& grids, const LongVector3& position)
{
- for (auto& grid : grids) {
- for (auto& wreck : grid.wrecks) {
- const long double dist =
- std::sqrt(
- std::pow(position.x - wreck.killmail.position.x, 2) +
- std::pow(position.y - wreck.killmail.position.y, 2) +
- std::pow(position.z - wreck.killmail.position.z, 2));
- if (dist < EXTENT)
+ for (auto& grid : grids)
+ for (auto& wreck : grid.wrecks)
+ if (dist3(position, wreck.killmail.position) < EXTENT)
return grid;
- }
- }
grids.push_back(Grid{});
return grids.back();
}