Commit Graph

145 Commits

Author SHA1 Message Date
Arthur O'Dwyer 62629f3e70 Change `static const` to `static constexpr` wherever possible
Since we require C++11, most of these consts can be constexpr.

Two `static const ld` remain non-compile-time-evaluable because
they depend on the runtime `log` function. One `static const cld`
remains non-compile-time because `std::complex<T>` doesn't become
constexpr until C++14.
2023-08-23 09:47:28 -08:00
Arthur O'Dwyer ced3bbcad4 Qualify calls to `format`
C++20 introduces `std::format` and we `using namespace std`,
so some of these would be ambiguous in C++20.
2023-08-21 10:18:44 -07:00
Zeno Rogue c9a9a38188 dialog:: cleaned string dialog 2023-08-14 04:36:14 +02:00
Zeno Rogue 59dd09173a fixed the combinations of Archimedean, fake, and embedding 2023-06-10 10:33:42 +02:00
Zeno Rogue 3e8dd6f549 arcm:: fixed a stupid bug 2023-05-30 18:44:03 +02:00
Zeno Rogue c6b27c5b27 fixed Archimedean embeddings 2023-05-23 11:46:05 +02:00
Zeno Rogue a47dbc5dd5 fixed some crashes in embedding+arb 2023-03-26 00:37:08 +01:00
Zeno Rogue 0c59d626bb disabled Archimedean check in embedded_plane 2022-12-09 02:33:15 +01:00
Zeno Rogue 08b72c52b3 fixed arcm geometry setting 2022-12-09 02:33:15 +01:00
Zeno Rogue 3e733ae6e9 Big change: spatial_embedding option 2022-12-09 02:33:15 +01:00
Zeno Rogue 06523e063e used cyclefix and raddif in more places; (c)spin90, (c)spin180 and spin180 functions; rephrased M_PI in terms of TAU and x._deg when applicable 2022-11-13 16:22:55 +01:00
Zeno Rogue 03b7804817 mirrored tiles marked on or off 2022-10-06 13:35:56 +02:00
Zeno Rogue 7787f26bc2 added kz to some debug printouts 2022-08-07 03:16:24 +02:00
Arthur O'Dwyer 0ae74aad62 Fix more instances of Clang's -Wunqualified-std-cast-call 2022-07-05 13:28:00 -04:00
Zeno Rogue 75f58766a2 made background screen darkening consistent and optional 2022-07-05 11:51:06 +02:00
Zeno Rogue 793148729b An option to play on a disk (and use bounded space rules). Also renamed 'bounded' flag to 'closed' or similar, and improved Halloween 2022-05-21 13:08:42 +02:00
Zeno Rogue 32ff898cd1 compute_edgelength accepts inf-faces 2022-04-24 22:57:34 +02:00
Zeno Rogue 592605c6e2 Arcmedge now accepts a^:b which means that a is repeated b times. Also the computations now work for real a, b 2022-04-24 22:57:34 +02:00
Zeno Rogue 36c71eb583 prevent a crash when entering '(0,0)' in Archimedean 2022-03-27 22:47:51 +02:00
Zeno Rogue 6c9f7e71e1 better handling of precision errors in arcm and arb 2021-08-22 23:41:38 +02:00
Zeno Rogue 14afd51049 when switching dimension in arb/fake, the correct geometry is used for fixmatrix 2021-08-05 13:17:40 +02:00
Zeno Rogue 51ad054012 arcm:: debug output uses index_pointer 2021-08-05 12:48:48 +02:00
Zeno Rogue f21a36a7aa arcm:: correct cgip is used for the altmap 2021-08-05 12:48:14 +02:00
Zeno Rogue fcf55f1852 arcm:: arcm_euclid_length parameter 2021-08-05 12:21:39 +02:00
Zeno Rogue e175f522dc arcm:: cleared spam in DF_GEOM 2021-08-04 18:00:09 +02:00
Zeno Rogue d0e7541b45 nicer auto sight range computation, and range(...) directive in the tes language 2021-07-31 15:14:31 +02:00
Arthur O'Dwyer 0ee6ce8c83 Eliminate -Woverloaded-virtual warnings from Clang. NFCI. 2021-07-12 17:51:39 -04:00
Zeno Rogue 9a319e2d2a refactored shvid_full and wall_offset as virtual functions 2021-07-09 22:32:00 +02:00
Zeno Rogue e37fa65247 arcm:: fixed the possible crash on deleting arcms with large cells, because of the confusion of cdata 2021-07-04 11:00:38 +02:00
Zeno Rogue 74486309a6 created a function init_heptagon which does tailored_alloc and clears the data 2021-07-04 10:36:16 +02:00
Zeno Rogue 3bf17c12f7 arcm:: hr_archimedean_error as an exception 2021-07-04 09:32:29 +02:00
Zeno Rogue 8b306c765e used OOP for get_corner_position 2021-06-17 09:44:47 +02:00
Zeno Rogue 42fc2c44a7 rewritten shvid using OOP 2021-06-17 09:44:47 +02:00
Zeno Rogue 8d18946450 written createMov in an OOP way 2021-06-12 23:25:59 +02:00
Zeno Rogue 056419288c enabling canvas now automatically enables ls::single 2021-04-23 20:09:23 +02:00
Zeno Rogue e7865a62b4 arcm:: fixed a potential crash 2021-02-07 22:55:10 +01:00
Zeno Rogue 96d28d173a MXDIM, and some extra comments 2020-11-01 17:37:51 +01:00
Zeno Rogue d64c5e338c extra guards 2020-10-15 16:33:52 +02:00
Zeno Rogue 2aec7b7691 improved correctness checking for Archimedean symbols: 6,5 or 6,4,2 are no longer valid 2020-09-16 23:49:17 +02:00
Zeno Rogue e26f8f5a5b optimized inverses 2020-09-16 23:49:17 +02:00
Zeno Rogue 67595a4ed3 redone hrmap::draw() function to keep DRY 2020-07-28 22:06:14 +02:00
Zeno Rogue 82f32607e6 MAJOR CHANGE: replaced (transmatrix,band_shift) pair with shiftmatrix 2020-07-28 22:06:14 +02:00
Zeno Rogue 39ac36c4aa arcm:: more efficient when actually regular 2020-07-03 15:40:26 +02:00
Zeno Rogue 5238959cbd fake:: support Archimedean pure 2020-05-31 16:18:44 +02:00
Zeno Rogue dc3eeba73c arcm:: using hyperbolic trigonometry instead of binary search 2020-04-29 15:09:02 +02:00
Zeno Rogue d613f394cd additional Archimedean samples 2020-03-29 12:00:33 +02:00
Zeno Rogue e33852c60f arcm:: additional checking 2020-03-29 11:59:03 +02:00
Arthur O'Dwyer 7a706478dc Add a helper function `voidp` to silence GCC warnings about `%p`.
We must fully qualify calls to `hr::voidp` because the expression
`voidp(x)` is ambiguous or worse. "/usr/include/zconf.h" defines
`voidp` in the global namespace as a typedef for `void*`.
We don't want an unsafe functional-style cast to `void*`;
we want to call our nice safe helper function. So we qualify the name.
2020-03-23 14:39:28 -04:00
Arthur O'Dwyer a0da10b408 Remove extraneous semicolons to quiet pedantic GCC warnings. 2020-03-23 14:38:57 -04:00
Zeno Rogue 32c6228319 arb:: utilities for making Archimedean tilings 2020-03-22 11:27:06 +01:00