Commit Graph

331 Commits

Author SHA1 Message Date
Zeno Rogue ddb5d07ff6 cleanup in Euclidean 2019-12-08 10:59:09 +01:00
Zeno Rogue f243b61d72 fixed a crash when changing to product 2019-11-30 19:28:28 +01:00
Zeno Rogue f46967efb9 removed assignment of gp::loc to tie as Clang does not like it 2019-11-30 18:55:02 +01:00
Zeno Rogue 46892a35c4 hybrid:: celldistance 2019-11-30 18:06:48 +01:00
Zeno Rogue 25bc0f56de kth-turn product space (via CLI) 2019-11-30 18:06:48 +01:00
Zeno Rogue 78ecc9e960 fixed some crashes in E2xE 2019-11-30 18:06:48 +01:00
Zeno Rogue 5585831b27 fixed Archimedean and Penrose 2019-11-30 18:06:48 +01:00
Zeno Rogue d63b14da5c PIU now works in the underlying map -- underlying geometry only is too fragile 2019-11-30 18:06:47 +01:00
Zeno Rogue 97adbc28c0 Euclidean distance restored 2019-11-30 18:06:47 +01:00
Zeno Rogue 1cba452f07 rewritten the Euclidean geometry 2019-11-30 18:06:47 +01:00
Zeno Rogue aed8df0d04 hrmap_standard now can be 3D maps 2019-11-30 18:05:23 +01:00
Zeno Rogue a1fbfb2946 gp:: adjm to fix the confusion in quotient spaces 2019-11-30 18:05:23 +01:00
Zeno Rogue 0cb93afad7 createMov: bitruncation works on non-orientable with S7%2 == 0 2019-11-30 18:05:23 +01:00
Zeno Rogue 7e8ede4bd6 relative_matrix and adj changed 2019-11-30 18:05:23 +01:00
Zeno Rogue 89225f4632 missing override attributes 2019-11-15 14:24:17 +01:00
Zeno Rogue f70d7a4f27 allcells no longer generates too long list in S2xE 2019-11-15 02:54:53 +01:00
Zeno Rogue d10a6d10b5 use_exhaustive_distance used in Yendor under same rules 2019-11-15 02:51:25 +01:00
Zeno Rogue f36fee9faa racing:: better bounded tracks 2019-11-15 02:36:14 +01:00
Zeno Rogue 6655a73e5e qHUGE_BOUNDED to detect bounded geometries not to be computed fully 2019-11-15 02:19:26 +01:00
Zeno Rogue 577ab0e1d4 asonov:: substraction op used for efficient celldistance 2019-11-15 02:16:54 +01:00
Zeno Rogue 3bdbea30e3 fixed irregular map 2019-11-14 21:18:50 +01:00
Zeno Rogue 012d833f50 removed the tohex parameter 2019-11-14 19:33:55 +01:00
Zeno Rogue 8a2e9b7a73 fixed iddspin 2019-11-14 19:23:27 +01:00
Zeno Rogue aeaaf7586a refactored map functions: ddspin, iddspin, spacedist, spin_angle, virtualRebase[simple], adj 2019-11-14 16:51:50 +01:00
Zeno Rogue 4e534261f0 hrmap_binary no longer inherits from hrmap_hyperbolic (Liskov substitution fail) 2019-11-14 13:08:20 +01:00
Zeno Rogue 109dd9823c simplified ddspin/iddspin/cellgfxdist, replaced cellrelmatrix with adj/iadj 2019-11-14 00:27:59 +01:00
Zeno Rogue b0e481cc0a removed debug 2019-11-13 20:47:55 +01:00
Zeno Rogue 374d52bb58 default allcells builds the list on all quotient spaces, and generates some list if there is no dcal 2019-11-09 11:20:18 +01:00
Zeno Rogue add037d4e8 asonov:: changed direct checking of gArnoldCat to asonov::in() 2019-11-08 15:34:51 +01:00
Zeno Rogue d199411248 new tiling: Arnold's cat 2019-11-08 15:01:03 +01:00
Zeno Rogue d4b2e0f88b niltorus improvements 2019-11-02 22:19:32 +01:00
Zeno Rogue 377fd3f8bd torus3 improvements 2019-11-02 22:17:57 +01:00
Zeno Rogue 43f629e9c4 inforder:: wall generation 2019-10-10 13:49:35 +02:00
Zeno Rogue b5f6e6f3f5 inforder basics 2019-10-10 13:08:06 +02:00
Zeno Rogue f0ca277b10 geometry_supports_cdata() always returned false in hybrid 2019-10-06 13:05:39 +02:00
Zeno Rogue cbd8c77636 fixed distance computation in Nil 2019-10-05 18:55:11 +02:00
Zeno Rogue d69cb4e946 SolN manifold 2019-10-03 20:10:48 +02:00
Zeno Rogue 46d127401e nih improvements 2019-10-02 19:22:43 +02:00
Zeno Rogue 8833251c8b added some missing CAP_SOLV guards 2019-09-13 19:50:12 +02:00
Zeno Rogue d1bf6fef5e replaced product::product_sphere() 2019-09-12 22:50:16 +02:00
Zeno Rogue e8c7285cc2 product:: lands in S2xE 2019-09-12 22:50:16 +02:00
Zeno Rogue 2bad9afc54 export hooks_newmap 2019-09-12 22:50:16 +02:00
Zeno Rogue 82f24b4b6c exporting necessary stuff all over (in progress) 2019-09-12 22:50:16 +02:00
Zeno Rogue 339f6820fe removed referring to specific map subtypes 2019-09-12 22:50:16 +02:00
Zeno Rogue 9647cbd47e added #include hyper.h to all cpp files 2019-09-12 22:50:16 +02:00
Zeno Rogue 46dfd50a40 fixed a crash in Archimedean sl2 due to Cdata 2019-09-12 22:50:15 +02:00
Zeno Rogue c33c79a902 generalized PSL2 to spherical rotation spaces too 2019-09-12 22:50:15 +02:00
Zeno Rogue 2bedd5f2ce fix for Archimedean hybrid 2019-09-12 22:50:15 +02:00
Zeno Rogue 1e6970ca28 hybrid:: refactored the common parts of prod and sl2, also used them when applicable 2019-09-12 22:50:15 +02:00
Zeno Rogue 136b931609 PSL(2,R) 2019-09-12 22:50:15 +02:00
Zeno Rogue a03eb0d913 fixed new geometry handling for Archimedean 2019-09-12 22:50:15 +02:00
Zeno Rogue 988adb8259 product:: horocycles now have base altitude 2019-09-12 22:50:14 +02:00
Zeno Rogue a25bf14cff added missing clearmemory in nonisotropic geometries; this also fixed a crash in Archimedean 2019-09-12 22:50:14 +02:00
Zeno Rogue 081bb55202 in_underlying_map, not PIU in distance functions 2019-09-12 22:50:13 +02:00
Zeno Rogue f40072511b product:: big stuff 2019-09-12 22:50:13 +02:00
Zeno Rogue 6958cbcbd9 product:: preliminary version (no turning) 2019-09-12 22:50:13 +02:00
Zeno Rogue 843a53d07c fixed a bug with Archimedean hyperbolic tilings 2019-09-12 22:50:13 +02:00
Zeno Rogue 437c4e4cdd flag 'experimental' for new geometries 2019-09-12 22:50:13 +02:00
Zeno Rogue 8b1c7bffe4 initial reformatting of comments for Doxygen 2019-09-12 22:50:13 +02:00
Zeno Rogue 609d1b91d3 further cleanup 2019-09-12 22:50:13 +02:00
Zeno Rogue 245ee5878f removed function dirfromto as it was equal to neighborId 2019-09-12 22:50:12 +02:00
Zeno Rogue c2d56fb9bc autohdr.h applied in more files 2019-09-12 22:50:12 +02:00
Zeno Rogue f4eda1d76e removed function fixdir 2019-09-12 22:50:12 +02:00
Zeno Rogue 661743a19b removed the obsolete *MovR functions 2019-09-12 22:50:12 +02:00
Zeno Rogue ef89c7ed9d removed functions fix6 and fix7 2019-09-12 22:50:12 +02:00
Zeno Rogue c131e21198 namespace hyperpoint_vec removed 2019-09-12 22:50:12 +02:00
Zeno Rogue 602e6f27db generating various lands in Sol 2019-09-12 22:50:12 +02:00
Zeno Rogue 4f27b12ca2 nilv:: preliminary implementation 2019-09-12 22:50:11 +02:00
Zeno Rogue 875af54063 approx_distance in Sol 2019-09-12 22:50:11 +02:00
Zeno Rogue 40e5f7f930 celldistance now returns DISTANCE_UNKNOWN instead of 64 if it does not know 2019-09-12 22:50:11 +02:00
Zeno Rogue bca567cc10 updir used in heptdistance 2019-09-12 22:50:11 +02:00
Zeno Rogue 9f664568ab penrose3 fixup 2019-09-12 22:50:11 +02:00
Zeno Rogue bc1cc7e2ca one more celldistance switch 2019-09-12 22:50:11 +02:00
Zeno Rogue 94f4cd24af fixed build_shortest_path in arcm/Penrose euclidean 2019-09-12 22:50:11 +02:00
Zeno Rogue 908bd13660 getHeptagonCdata_legacy to keep Racing working 2019-09-12 22:50:11 +02:00
Zeno Rogue 158030c5de improved exhaustive distance computation for geometries such as Archimedean/Penrose E2 2019-09-12 22:50:11 +02:00
Zeno Rogue c97ab10700 pushed unimplemented Product 2019-09-12 22:50:09 +02:00
Zeno Rogue fff0cd1d3e land improvements in Sol/Penrose/B4 2019-09-12 22:50:09 +02:00
Zeno Rogue cf496e8940 kite-and-dart tiling 2019-09-12 22:50:09 +02:00
Zeno Rogue 45ba083185 celldist in sol uses celldistance 2019-09-12 22:50:09 +02:00
Zeno Rogue 946570da31 moved zpush from 3dmodels to hyperpoint 2019-09-12 22:50:09 +02:00
Zeno Rogue 2d30f3830c standard binary tiling, also improved the looks of variant binary tiling, and optimized shvid for pure 2019-09-12 22:50:09 +02:00
Zeno Rogue d1fb9f3564 simplified and generalized cdata 2019-09-12 22:50:09 +02:00
Zeno Rogue a5dc6d40e6 fixed wrong degree() in binary tiling root 2019-09-12 22:50:09 +02:00
Zeno Rogue 7d086da036 removed some junk 2019-09-12 22:50:04 +02:00
Zeno Rogue df3e21b310 debug cleanup 2019-09-12 22:50:00 +02:00
Zeno Rogue 1c4d86e0e9 3D graphics in 2D (first commit) 2019-09-12 22:43:01 +02:00
Zeno Rogue c8e950cd40 added some missing CAP_ and MAXMDIM guards 2019-09-12 22:43:01 +02:00
Zeno Rogue c0145c0d9c 3d:: Euclidean tori 2019-09-12 22:42:59 +02:00
Zeno Rogue 44495852ad hr_exception, currently used for build_shortest_path 2019-09-12 22:42:58 +02:00
Zeno Rogue 225282a3eb 3d::binary:: make the land barriers more like planes by pushing them by a number depending on btwidth 2019-09-12 22:38:45 +02:00
Zeno Rogue ebbaa3fcc3 fixed some memory bugs 2019-09-12 22:38:45 +02:00
Zeno Rogue 497f7f6c0f 3d:: reg3:: distances and alt-distances 2019-09-12 22:38:45 +02:00
Zeno Rogue 78d88b5909 improved in the OO fashion: draw, relative_matrix, create_step, and several minor functions are now virtual in hrmap 2019-09-12 22:38:44 +02:00
Zeno Rogue d8428f2ec3 crystal::3d:: transformation 2019-09-12 22:38:44 +02:00
Zeno Rogue 105de56857 3d:: HoroTris geometry 2019-09-12 22:38:44 +02:00
Zeno Rogue 52ce5ac9aa 3d:: all the regular honeycombs 2019-09-12 22:38:43 +02:00
? 81dd0c71da added some missing guards for CAP_BT and MAXMDIM 2019-09-12 22:38:42 +02:00
? 54f278963c renamed MAXDIM to MAXMDIM (conflict with crystal) 2019-09-12 22:38:42 +02:00
? c14515c5ac fixed build_shortest_path in 4-valent Euclidean tilings 2019-09-12 22:38:42 +02:00
? 858a5eddb1 in createMov applied mirror just in case 2019-09-12 22:38:42 +02:00
? 00d9bacddd 3D:: disabled build_shortest_path in euclid for now 2019-09-12 22:38:42 +02:00
? 9319c3b0fa 3d:: celldistances 2019-09-12 22:38:42 +02:00
? a6094f7b0c 3d:: binary:: celldistance [untested] 2019-09-12 22:38:42 +02:00
? 33d4854c14 3D:: 120-cell 2019-09-12 22:38:40 +02:00
? 4b356d9945 moved quotient spaces to quotient.cpp 2019-09-12 22:38:40 +02:00
? 33d94beb4f moved spherical geometry to sphere.cpp 2019-09-12 22:38:40 +02:00
? c7cb93f2ed moved all the Euclidean maps to euclid.cpp 2019-09-12 22:38:40 +02:00
? 7110be2032 3D:: cube tiling 2019-09-12 22:38:40 +02:00
? d08e58f404 3d:: 2D/3D is now selectable at runtime 2019-09-12 22:38:40 +02:00
? 96e4ff6c9d binary tiling in 3D works 2019-09-12 22:38:39 +02:00
? c5a771c888 CAP_FIELD part 1 2019-09-12 22:38:39 +02:00
? b25730d5c9 geometry flags part 1 2019-09-12 22:38:39 +02:00
Zeno Rogue a676424573 Irradiated Yendor Challenge (but commented off for now) 2019-09-12 22:38:39 +02:00
Zeno Rogue fd9fca6129 redesigned the Experiment with Geometry menu 2019-02-08 16:55:00 +01:00
Zeno Rogue 8c5b62e309 octagon geometry 2019-02-06 18:48:52 +01:00
Zeno Rogue b0b783b581 tailored_delete used for deleting cells and heptagons, so that there is no delete/delete[] mismatch 2019-02-06 18:48:52 +01:00
Zeno Rogue df0578a1fe cdata is now initialized to 0, or ALL if reptilecheat is on 2019-02-06 18:48:52 +01:00
Zeno Rogue c022863e8b fix unused lambda capture 2018-12-15 14:50:11 +01:00
Zeno Rogue 0d558cb0e1 build_shortest_path function 2018-12-14 19:27:12 +01:00
Zeno Rogue 5221ac07a3 crystal:: celldist(ance) gives precise distance, heptdistance gives imprecise one 2018-12-14 19:27:12 +01:00
Zeno Rogue 05df60ae70 more lands implemented for cylinders 2018-12-14 19:27:12 +01:00
Zeno Rogue 000f271552 refactored buildCamelot as a separate function 2018-12-14 19:27:11 +01:00
Zeno Rogue fd3b030119 crystal:: added multi-dimensional geometries (referred to as crystal), available via CLI for now 2018-12-14 19:27:11 +01:00
Zeno Rogue cd357303b9 cleaned up surface flags 2018-12-14 19:27:11 +01:00
Zeno Rogue bf7bb61d35 handlers for createStep and newmap 2018-12-11 22:10:53 +01:00
Zeno Rogue f2ee616eab all Mobius bands implemented 2018-12-11 22:10:53 +01:00
Zeno Rogue 460eb19881 implemented new geometries: cylinder and (only one for now) Mobius band 2018-12-11 22:10:53 +01:00
Zeno Rogue 64da329f8e added new quotient spaces: Bring's, Schmutz's M(2), Schmutz's M(3) 2018-11-23 23:46:26 +01:00
Zeno Rogue 62a5c0abac more stable quotient space generation 2018-11-23 23:44:12 +01:00
Zeno Rogue e697cb57cb Macbeath surface 2018-11-23 03:10:57 +01:00
Zeno Rogue d0ee141270 celldist now works in the binary tiling as for other geometries (distance from origin, not horocycle index); also types are computed nicely for the origin-based celldist 2018-09-28 16:27:03 +02:00
Zeno Rogue ce390de0d2 fixed curr_dist and horocycles in Canvas for Euclidedan 2018-09-28 12:27:44 +02:00
Zeno Rogue b5542c66ba hyperbolic_celldistance algorithm implemented for all hyperbolic tilings (minor bugs known in irregular, still ugly in bitrunc a45) 2018-09-23 16:34:53 +02:00
Zeno Rogue b5c0675daa fixed eudist in bitruncated square grid 2018-09-12 04:15:35 +02:00
Zeno Rogue a04eef75a9 cth to handle heptspin/cellwalker translations in a nice way 2018-08-30 16:10:49 +02:00
Zeno Rogue 829850a701 dual tilings 2018-08-30 02:11:43 +02:00
Zeno Rogue 6de0f0a8aa instead of nonbitrunc, gp::on and irr::on, there is one variable, variation 2018-08-28 17:17:34 +02:00
Zeno Rogue 56c102de94 tailored allocation, and increased MAX_EDGE to 14 2018-08-22 00:00:59 +02:00
Zeno Rogue c54d4ec59d struct archimedean_tiling 2018-08-20 02:02:45 +02:00
Zeno Rogue 4d31e5a544 renamed 'syntetic' to 'archimedean' (enums/files/marcos/namespaces) 2018-08-19 23:06:32 +02:00
Zeno Rogue c42940684c proper hrmap_* for syntetic; fixed a bug when deleting 2018-08-19 18:04:56 +02:00
Zeno Rogue 7bae01c168 synt:: replaced the combinatorial building process with floating-point-based one for hyperbolic geometry too 2018-08-19 00:27:20 +02:00
Zeno Rogue a92cc33426 removed 'stdeuclid' and using 'masterless' since it was too similar to 'stdeuc' 2018-08-18 17:35:39 +02:00
Zeno Rogue 682f804576 major rewrite: unified the common parts of heptagon and cell via struct connection<T> and struct walker<T> 2018-08-18 00:46:45 +02:00
Zeno Rogue 7064dace81 default celldistance in syntetic and binarytiling 2018-08-17 21:38:07 +02:00
Zeno Rogue fe1a5c5a03 bugfix in memory clear 2018-08-17 21:37:33 +02:00
Zeno Rogue 749ad03138 syntetic tilings (WIP) 2018-08-17 13:29:00 +02:00
Zeno Rogue 4f3cc3783a binary tiling 2018-08-09 19:28:53 +02:00
Zeno Rogue f7e5f470dc irr:: celldist and (circular, not yet horocyclic) celldistAlt 2018-07-20 02:58:47 +02:00