Primitive unit cell is such that contains lattice points **only** on unit cell vertexes. Non-primitive unit cell can contain lattice points also elsewhere, for example centered on unit cell face, on the middle of unit cell edges, un-centered ones inside face, etc. So basically hexagon cell can be both primitive and non-primitive cell, depending on the chosen lattice structure, like pictured here :

[![enter image description here][1]][1]

Thus in general one can choose many configurations of cells representing some lattice.


  [1]: https://i.sstatic.net/Qh6CW.png