diff options
Diffstat (limited to 'Source/Panel.h')
-rw-r--r-- | Source/Panel.h | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/Source/Panel.h b/Source/Panel.h index c9b4910..565b4c3 100644 --- a/Source/Panel.h +++ b/Source/Panel.h | |||
@@ -90,7 +90,7 @@ private: | |||
90 | class Panel | 90 | class Panel |
91 | { | 91 | { |
92 | public: | 92 | public: |
93 | explicit Panel(int id); | 93 | Panel(int id); |
94 | // explicit Panel(nlohmann::json json); | 94 | // explicit Panel(nlohmann::json json); |
95 | 95 | ||
96 | void Write(int id); | 96 | void Write(int id); |
@@ -109,6 +109,9 @@ public: | |||
109 | }; | 109 | }; |
110 | 110 | ||
111 | private: | 111 | private: |
112 | // For testing | ||
113 | Panel(); | ||
114 | |||
112 | void ReadIntersections(int id); | 115 | void ReadIntersections(int id); |
113 | void WriteIntersections(int id); | 116 | void WriteIntersections(int id); |
114 | void ReadDecorations(int id); | 117 | void ReadDecorations(int id); |
@@ -117,6 +120,20 @@ private: | |||
117 | // TODO: Reflection data | 120 | // TODO: Reflection data |
118 | // TODO: Decoration colors | 121 | // TODO: Decoration colors |
119 | 122 | ||
123 | std::tuple<int, int> loc_to_xy(int location) { | ||
124 | int x = 2 * (location % ((_width + 1) / 2)); | ||
125 | int y = (_height - 1) - 2 * (location / ((_width + 1) / 2)); | ||
126 | return {x, y}; | ||
127 | } | ||
128 | |||
129 | int xy_to_loc(int x, int y) { | ||
130 | int height2 = (_height - 1) / 2; | ||
131 | int width2 = (_width + 1) / 2; | ||
132 | |||
133 | int rowsFromBottom = height2 - y/2; | ||
134 | return rowsFromBottom * width2 + x/2; | ||
135 | } | ||
136 | |||
120 | Memory _memory = Memory("witness64_d3d11.exe"); | 137 | Memory _memory = Memory("witness64_d3d11.exe"); |
121 | 138 | ||
122 | int _width, _height; | 139 | int _width, _height; |
@@ -125,4 +142,6 @@ private: | |||
125 | std::vector<Endpoint> _endpoints; | 142 | std::vector<Endpoint> _endpoints; |
126 | std::vector<std::pair<int ,int>> _startpoints; | 143 | std::vector<std::pair<int ,int>> _startpoints; |
127 | int _style; | 144 | int _style; |
145 | |||
146 | friend class PanelExtractionTests; | ||
128 | }; \ No newline at end of file | 147 | }; \ No newline at end of file |