HyperRogue  11.3d
game/visualization engine based on non-Euclidean geometry
Public Types | Public Member Functions | Public Attributes | List of all members
hr::reg3::hrmap_reg3_rule Struct Reference
Inheritance diagram for hr::reg3::hrmap_reg3_rule:
hr::hrmap

Public Types

typedef pair< int, int > address
 

Public Member Functions

void load_ruleset (string fname)
 
void find_mappings ()
 
heptagongetOrigin () override
 
heptagoncounterpart (heptagon *h)
 
void find_emeraldval (heptagon *target, heptagon *parent, int d)
 
heptagoncreate_step (heptagon *parent, int d) override
 
void draw () override
 
transmatrix adj (heptagon *h, int d) override
 
transmatrix relative_matrix (heptagon *h2, heptagon *h1, const hyperpoint &hint) override
 
vector< hyperpointget_vertices (cell *c) override
 
- Public Member Functions inherited from hr::hrmap
virtual cellgamestart ()
 
virtual vector< cell * > & allcells ()
 
virtual void verify ()
 
virtual void link_alt (const cellwalker &hs)
 
virtual void generateAlts (heptagon *h, int levs=default_levs(), bool link_cdata=true)
 
heptagonmay_create_step (heptagon *h, int direction)
 
virtual struct transmatrix relative_matrix (cell *c2, cell *c1, const hyperpoint &hint)
 
virtual struct transmatrix adj (cell *c, int i)
 
struct transmatrix iadj (cell *c, int i)
 
transmatrix iadj (heptagon *h, int d)
 
virtual void virtualRebase (heptagon *&base, transmatrix &at)
 
virtual ld spin_angle (cell *c, int d)
 
virtual transmatrix spin_to (cell *c, int d, ld bonus=0)
 
virtual transmatrix spin_from (cell *c, int d, ld bonus=0)
 
virtual double spacedist (cell *c, int i)
 

Public Attributes

heptagonorigin
 
reg3::hrmap_quotient3quotient_map
 
reg3::hrmap_quotient3emerald_map
 
fieldpattern::fpattern fp
 
vector< int > root
 
string other
 
vector< short > children
 
vector< int > otherpos
 
map< address, set< address > > nonlooping_earlier_states
 
vector< vector< int > > possible_states
 
vector< short > evmemo
 

Additional Inherited Members

- Static Public Attributes inherited from hr::hrmap
static constexpr ld SPIN_NOT_AVAILABLE = 1e5
 

Member Typedef Documentation

◆ address

typedef pair<int, int> hr::reg3::hrmap_reg3_rule::address

address = (fieldvalue, state)

Member Data Documentation

◆ nonlooping_earlier_states

map<address, set<address> > hr::reg3::hrmap_reg3_rule::nonlooping_earlier_states

nles[x] lists the addresses from which we can reach address x without ever ending in the starting point


The documentation for this struct was generated from the following file: