Module Tiling.Tile


module Tile: sig .. end


type symetries =
| Snone
| Srotations
| Sall

type multiplicity =
| Minf
| Mone
| Mmaybe

type t = private {
   name : string option;
   pattern : Tiling.Pattern.t;
   multiplicity : multiplicity;
   symetries : symetries;
   isos : D4.subgroup;
}
val create : ?name:string ->
?s:symetries ->
?m:multiplicity -> Tiling.Pattern.t -> t
construct a tile from his name, its symetries s and its multiplicity m. s defaults to Snone and m defaults to Minf
val apply : D4.t -> t -> t
apply i t creates a new tile by applying transformation i to t
val print : Format.formatter -> t -> unit
print a tile