diff options
| author | jbzdarkid <jbzdarkid@gmail.com> | 2019-11-20 10:05:59 -0800 |
|---|---|---|
| committer | jbzdarkid <jbzdarkid@gmail.com> | 2019-11-20 10:05:59 -0800 |
| commit | 6f0a34bfb761d965bd961dc1f880b84e35f9959f (patch) | |
| tree | 9fad4b4d98f5cb644b635c017a959dd3752a0399 /Source/PuzzleSerializer.h | |
| parent | ab5652329d3e6bbaaf338e47fb3d84d89bf9b7b1 (diff) | |
| download | witness-tutorializer-6f0a34bfb761d965bd961dc1f880b84e35f9959f.tar.gz witness-tutorializer-6f0a34bfb761d965bd961dc1f880b84e35f9959f.tar.bz2 witness-tutorializer-6f0a34bfb761d965bd961dc1f880b84e35f9959f.zip | |
Understanding symmetry, but nothing else.
Diffstat (limited to 'Source/PuzzleSerializer.h')
| -rw-r--r-- | Source/PuzzleSerializer.h | 8 |
1 files changed, 7 insertions, 1 deletions
| diff --git a/Source/PuzzleSerializer.h b/Source/PuzzleSerializer.h index d9b9edd..3c8f480 100644 --- a/Source/PuzzleSerializer.h +++ b/Source/PuzzleSerializer.h | |||
| @@ -31,6 +31,7 @@ private: | |||
| 31 | void ReadExtras(Puzzle& p); | 31 | void ReadExtras(Puzzle& p); |
| 32 | void ReadDecorations(Puzzle& p, int id); | 32 | void ReadDecorations(Puzzle& p, int id); |
| 33 | void ReadSequence(Puzzle& p, int id); | 33 | void ReadSequence(Puzzle& p, int id); |
| 34 | void ReadSymmetry(Puzzle& p, int id); | ||
| 34 | 35 | ||
| 35 | void WriteIntersections(const Puzzle& p); | 36 | void WriteIntersections(const Puzzle& p); |
| 36 | void WriteDots(const Puzzle& p); | 37 | void WriteDots(const Puzzle& p); |
| @@ -38,9 +39,11 @@ private: | |||
| 38 | void WriteEndpoints(const Puzzle& p); | 39 | void WriteEndpoints(const Puzzle& p); |
| 39 | void WriteDecorations(const Puzzle& p, int id); | 40 | void WriteDecorations(const Puzzle& p, int id); |
| 40 | void WriteSequence(const Puzzle& p, int id); | 41 | void WriteSequence(const Puzzle& p, int id); |
| 42 | void WriteSymmetry(const Puzzle& p, int id); | ||
| 41 | 43 | ||
| 42 | std::tuple<int, int> loc_to_xy(const Puzzle& p, int location) const; | 44 | std::tuple<int, int> loc_to_xy(const Puzzle& p, int location) const; |
| 43 | int xy_to_loc(const Puzzle& p, int x, int y) const; | 45 | int xy_to_loc(const Puzzle& p, int x, int y) const; |
| 46 | int extra_xy_to_loc(Pos pos) const; | ||
| 44 | // Decoration location | 47 | // Decoration location |
| 45 | std::tuple<int, int> dloc_to_xy(const Puzzle& p, int location) const; | 48 | std::tuple<int, int> dloc_to_xy(const Puzzle& p, int location) const; |
| 46 | int xy_to_dloc(const Puzzle& p, int x, int y) const; | 49 | int xy_to_dloc(const Puzzle& p, int x, int y) const; |
| @@ -49,14 +52,17 @@ private: | |||
| 49 | Cell::Dot FlagsToDot(int flags) const; | 52 | Cell::Dot FlagsToDot(int flags) const; |
| 50 | // Iterate connection lists for another location which is connected to us; return that other location. | 53 | // Iterate connection lists for another location which is connected to us; return that other location. |
| 51 | int FindConnection(int location) const; | 54 | int FindConnection(int location) const; |
| 55 | void AddIntersection(int x, int y, float xPos, float yPos, int flags); | ||
| 52 | 56 | ||
| 53 | std::shared_ptr<Memory> _memory; | 57 | std::shared_ptr<Memory> _memory; |
| 54 | 58 | ||
| 55 | std::vector<float> _intersectionLocations; | 59 | std::vector<float> _intersectionLocations; |
| 60 | int _numIntersections; | ||
| 56 | std::vector<int> _intersectionFlags; | 61 | std::vector<int> _intersectionFlags; |
| 57 | std::vector<int> _connectionsA; | 62 | std::vector<int> _connectionsA; |
| 58 | std::vector<int> _connectionsB; | 63 | std::vector<int> _connectionsB; |
| 59 | std::vector<std::tuple<int, int, int>> _endpointLocations; | 64 | // Locations of non-grid points, i.e. dots, gaps, and endpoints |
| 65 | std::vector<std::tuple<int, int, int>> _extraLocations; | ||
| 60 | 66 | ||
| 61 | float MIN, MAX, WIDTH_INTERVAL, HEIGHT_INTERVAL, HORIZ_GAP_SIZE, VERTI_GAP_SIZE; | 67 | float MIN, MAX, WIDTH_INTERVAL, HEIGHT_INTERVAL, HORIZ_GAP_SIZE, VERTI_GAP_SIZE; |
| 62 | }; | 68 | }; |
