Portability | portable |
---|---|
Stability | provisional |
Maintainer | echbar137@yahoo.co.in |
Safe Haskell | Safe |
- type Numb = Int
- type Size = Numb
- type Point = (Numb, Numb)
- type Vec = (Numb, Numb, Numb)
- type Format = String
- type ColorTag = String
- type Projection = [(Numb, Side)]
- type CubeSurf = [(Side, [Color])]
- data Matrix = Matrix Vec Vec Vec
- data Command
- data View
- data ViewAssociation
- data Rotation
- data Direction
- data Slab
- data Side
- data Color
- data ActualCube = ActualCube {}
- whiteC :: [Char]
- yellowC :: [Char]
- orangeC :: [Char]
- redC :: [Char]
- blueC :: [Char]
- greenC :: [Char]
- noC :: [Char]
- invOpp :: Rotation -> Rotation
- invDir :: Direction -> Direction
- sideToColor :: Side -> Color
- colorToSide :: Color -> Side
Documentation
Physical size of cube. For example a value of 3 refers to original 3x3x3 Rubik's cube.
type Point = (Numb, Numb)Source
Point is used in transformations of cubies in a two dimensional plane.
type Vec = (Numb, Numb, Numb)Source
Vector which orientation group matrices act on. Also used for calculating new cubie positions.
type Projection = [(Numb, Side)]Source
Matrices in hcube are constructed from column vectors. The third vector is often chosen as the cross product of the first two such that the determinate of the matrix is one.
Used for simplistic processing of console commands.
data ViewAssociation Source
Used by Template to map logical structure of cube to display views.
Defines a rotation of an arbitrary cube slice.
Defines direction of slab movement.
Defines an axis for slab movement.
Sides of a cube.
Represents the color of a cubie face.
data ActualCube Source
Represents the color white. Modify if the physical cube uses a different coloring scheme
sideToColor :: Side -> ColorSource
Associates a side of a solved cube to a color.
colorToSide :: Color -> SideSource
Inverse of sideToColor