# hex-coordinates [![crates.io](https://img.shields.io/crates/v/hex-coordinates)](https://crates.io/crates/hex-coordinates) [![docs.rs](https://img.shields.io/docsrs/hex-coordinates)](https://docs.rs/hex-coordinates/) A library for handling hex coordinates. Massive credit to [Hexagonal Grids from Red Blob Games](https://www.redblobgames.com/grids/hexagons/).
OffsetDoubledAxialCube
Pointy Rotationevenr, oddrdoublewidthaxialcube
Flat Rotationevenq, oddqdoubleheight
Other Rotationsnoyes
Vector operations (add, subtract, scale)noyesyesyes
Array storagerectangularno*rhombus*no*
Hash storageany shapeany shape
Hexagonal symmetrynononoyes
Easy algorithmsfewsomemostmost
The article notes: > My recommendation: if you are only going to use non-rotated rectangular maps, consider the > doubled or offset system that matches your map orientation. For maps with Rotation, or > non-rectangularly shaped maps, use axial/cube. Either choose to store the s coordinate (cube), > or calculate it when needed as -q-r (axial).