Class net


Code: nets.mpl

An instance of this class represents a net which can be glued to produce a cromulent surface.

Constructor: `new/net`()

Field: name::string

A name for the net

Field: v::table

This is a table of points in $\mathbb{R}^2$. The indices are integers in $\{0,1,\dotsc,13\}$, or integers in that range plus a multiple of $0.1$. The idea is that vertices indexed 10, 10.1, 10.2 and so on will all be identified together and will become the vertex $v_{10}$ in the glued surface

Field: edges::list([numeric, numeric])

This is a list of pairs. A pair [i,j] appears in the list if i and j are indices in the v table, and there is an edge from vertex i to vertex j in the net.

Field: outer_edges::list([numeric, numeric])

This is a list containing some of the entries in the edges list, namely those that lie on the boundary of the net. It can be set by the set_outer_edges method.

Field: squares::table

This is a table indexed by the 16 elements of the group $G$. Each entry is a list of four indices from the v table. If $g\in G$ and $F$ is the fundamental domain, then the net will have a quadrilateral region corresponding to $g.F$, and the corners of that region are indexed by the elements of the $g$'th element in the squares table. These indices should be listed so that they correspond to $g.v_6$, $g.v_0$, $g.v_{11}$ and $g.v_3$ in that order.

Field: square_centres::table

This is a table indexed by the 16 elements of the group $G$, withentries in $\mathbb{R}^2$. The $g$'th entry is the barycentre of the quadrilateral region in the net corresponding to $g.F$.

Field: tikz_scale::numeric = 1

This is the scale parameter that should be used when generating a tikzpicture environment illustrating this net.

Field: v_anchor::table

This is a table with the same indices as the v table. The entries are strings like "north", "south east" and so on. These entries indicate where the relevant vertex labels should be placed relative to the vertices themselves.

Method: set_edges_from_squares()

If the squares table has been filled, then this method can be used to fill the edges list.


Method: set_square_centres()

This fills the square_centres table using information from the v and squares tables.


Method: set_outer_edges()

This works out which edges lie on the boundary of the net.


Method: plot()

This generates a Maple plot illustrating the net.


Method: save_plot()

This calls the plot method and saves the result, both as en entry in the global variable pics and as a file in the plots directory


Method: outer_edge_plot()

This generates a Maple plot showing the outer edges of the net.


Method: tikz(scale_)

This generates a tikzpicture environment illustrating the net.


Method: save_tikz()

This calls the tikz method and saves the result


Method: check()

This checks the combinatorial structure of the net. It uses the global variable edges, which is set in cromulent.mpl