Portability | GHC |
---|---|

Stability | highly unstable |

Maintainer | Stephen Tetley <stephen.tetley@gmail.com> |

A Coordinate is operationally like a shape but it can only be
drawn as a dot or a cross and it only supports `CenterAnchor`

.

Coordinates support affine transformations, however transfomations only displace a coordinate's origin they do not change how it is drawn (one cannot elongate the drawing of a coordinate with a scale). This is why coordinates are not Shapes, though one major use of coordinates is to illustrate anchor points on Shapes.

- data CoordinateAnchor u
- type DCoordinateAnchor = CoordinateAnchor Double
- data Coordinate u
- type DCoordinate = Coordinate Double
- coordinate :: Num u => LocCoordinate u
- coordinateDot :: (Real u, Floating u, FromPtSize u) => Coordinate u -> Image u (CoordinateAnchor u)
- coordinateX :: (Real u, Floating u, FromPtSize u) => Coordinate u -> Image u (CoordinateAnchor u)

# Documentation

data CoordinateAnchor u Source

Coordinate

Eq u => Eq (CoordinateAnchor u) | |

Ord u => Ord (CoordinateAnchor u) | |

Show u => Show (CoordinateAnchor u) | |

(Real u, Floating u) => CenterAnchor (CoordinateAnchor u) |

data Coordinate u Source

Eq u => Eq (Coordinate u) | |

Ord u => Ord (Coordinate u) | |

Show u => Show (Coordinate u) | |

(Real u, Floating u) => Rotate (Coordinate u) | |

(Real u, Floating u) => RotateAbout (Coordinate u) | |

Num u => Scale (Coordinate u) | |

Num u => Translate (Coordinate u) |

type DCoordinate = Coordinate DoubleSource

coordinate :: Num u => LocCoordinate uSource

coordinateDot :: (Real u, Floating u, FromPtSize u) => Coordinate u -> Image u (CoordinateAnchor u)Source

coordinateX :: (Real u, Floating u, FromPtSize u) => Coordinate u -> Image u (CoordinateAnchor u)Source

Note - the `x`

is drawn *regardless* of any scaling or rotation.