mirror of
https://github.com/zenorogue/hyperrogue.git
synced 2025-11-17 14:17:10 +00:00
arbiquotient:: help message
This commit is contained in:
@@ -595,6 +595,8 @@ EX void show_dialog() {
|
||||
dialog::add_action([] { disable_quotient_data(); });
|
||||
}
|
||||
else dialog::addBreak(100);
|
||||
dialog::addItem("help", 'h');
|
||||
dialog::add_action([] { open_url("https://github.com/zenorogue/hyperrogue/blob/master/tessellations/sample/README.md"); });
|
||||
dialog::addBack();
|
||||
dialog::display();
|
||||
}
|
||||
|
||||
18
tessellations/sample/44.tes
Normal file
18
tessellations/sample/44.tes
Normal file
@@ -0,0 +1,18 @@
|
||||
## Euclidean square tiling
|
||||
e2.
|
||||
|
||||
angleunit(deg)
|
||||
unittile(90,90,90,90,|0)
|
||||
c(0,0,0,0,0)
|
||||
repeat(0, 4)
|
||||
|
||||
#/ four self-connected edges
|
||||
quotient(0,1,2,3)
|
||||
#/ four mirrors
|
||||
quotient(0^,1^,2^,3^)
|
||||
#/ tiny torus
|
||||
quotient(2,3,0,1)
|
||||
#/ whirlwind
|
||||
quotient(1,0,2^,3^)
|
||||
#/ three squares
|
||||
quotient(0,4,8,10^,1,11^,9,7,2,6,3^,5^)
|
||||
29
tessellations/sample/73.tes
Normal file
29
tessellations/sample/73.tes
Normal file
@@ -0,0 +1,29 @@
|
||||
## just the {7,3}
|
||||
h2.
|
||||
|
||||
# we compute the edge length of the Archimedean tessellation we are using
|
||||
distunit(arcmedge(7,7,7))
|
||||
# note: subsequent esults of arcmedge are given in terms of distunit
|
||||
|
||||
# regangle(A,B) returns the internal angle of a B-gon with sidelength A
|
||||
|
||||
let(u7 = regangle(1, 7))
|
||||
|
||||
unittile(u7,u7,u7,u7,u7,u7,u7,|0)
|
||||
|
||||
c(0,0,0,0,0)
|
||||
c(0,1,0,1,0)
|
||||
c(0,2,0,2,0)
|
||||
c(0,3,0,3,0)
|
||||
c(0,4,0,4,0)
|
||||
c(0,5,0,5,0)
|
||||
c(0,6,0,6,0)
|
||||
|
||||
#/ single heptagon
|
||||
quotient(0,1,6,3,5,4,2)
|
||||
|
||||
#/ three heptagons
|
||||
quotient(0,7,14,4,3,20,8,1,6,19,11,10,18,15,2,13,17,16,12,9,5)
|
||||
|
||||
#/ 12 heptagons
|
||||
quotient(7,14,21,28,35,42,49,0,55,31,56,45,63,15,1,13,69,70,52,77,22,2,20,83,38,73,58,29,3,27,57,9,54,75,36,4,34,74,24,82,65,43,5,41,64,11,62,79,50,6,48,78,18,76,32,8,10,30,26,72,67,80,46,12,44,40,81,60,71,16,17,68,59,25,37,33,53,19,51,47,61,66,39,23)
|
||||
@@ -110,6 +110,28 @@ enable "configure FPP automatically", and also "make the tiles flat"; then leave
|
||||
* If the tessellation is invalid, HyperRogue will invoke a debugger, which lets you see the tiles you have defined and move according to their connections. You can also invoke this debugger
|
||||
maually with `debug(tile_index)`.
|
||||
|
||||
# Quotient orbifolds
|
||||
|
||||
You can also play on quotient orbifolds by using the "quotient space" option in the "experiment with geometry" menu. These quotient orbifolds can be loaded from the tes file, or generated
|
||||
using the "auto-generate" option.
|
||||
|
||||
Mathematically, these orbifolds are obtained by picking a subgroup of the group of isometries of the tiling, and identifying the orbits of tiles as single tiles. It is not allowed to
|
||||
create cone points and mirrors in the centers of faces (in other words, identify a tile with another rotation/symmetry of itself -- HyperRogue does not know how to deal with that), but
|
||||
cone points on edge centers and vertices are allowed.
|
||||
|
||||
In the auto-generate menu, you can configure the limit on the search algorithm, "block" various kinds of singularities if you do not want them, disallow non-orientable quotients or
|
||||
ones which identify tiles which are too close, disable deduplication (which removes duplicates which differ only by irrelevant aspects), and export the quotients obtained to a file.
|
||||
If you move a bit before going into this menu, you can also "preunify" the tile and orientation the player character is currently on.
|
||||
|
||||
The exported file will include a copy of the definition of shapes, although it may look different due to listing all the numbers as floating point values, and include copies of shapes
|
||||
(HyperRogue generates such copies to make football colorings work and avoid using reflections). Replace with the original definitions should be fine.
|
||||
|
||||
You can see the files `44.tes` and `73.tes` as examples of the format. The format consists of a line starting with `#/ description`, and then list all the connections of the first tile
|
||||
in the orbifold, then all the connections of the second tile, and so on. Connections are indexed from 0, and every connection is simply the index of another edge it connects to.
|
||||
If a connection is mirrored, the symbol `^` appears after the index. The first tile is always of the first type listed in the file, and the other tiles are always listed in the order
|
||||
of appearance -- thus, for example, the second tile will be always the first connection of the first tile that does not connect to itself. This way, there is no need to list the types
|
||||
of tiles.
|
||||
|
||||
# How to make the tessellations look good
|
||||
|
||||
Normally, when you choose to load a tes file, a game of HyperRogue is run on the tiling selected. Which might be not what you wanted. Here are some hints for making nice pictures.
|
||||
|
||||
Reference in New Issue
Block a user