The canvas app uses a set of flat 2D (34x34) tiles. Note that for each tile, a top row tile can be drawn first, (as these 'point away'), then a tile from the left-hand column added on top.
There is no need to use a hexagonal grid. Alternative columns are simply offset up/down by half a tile to match up.
Each tile is surrounded by six others, so there are 2^6 (64) possible combinations. Wang tile maths, using neighbour weightings is used to correctly draw each tile.
To draw non-solid models, tiles are 'split', (drawn as two separate tiles), one on top of the other.
Just 16 tiles produce the most used and least ambiguous 25 splits.
these 6 tiles split one way, shown by a following '-' symbol in data files.
and 9 tiles that can be split 2 ways, shown by either a following '-' or '+' symbol in data files.