My group did the hexagon tiles. I studied the geometry.
https://www.splashlearn.com/math-vocabulary/geometry/hexagon
We can calculate the vertexes using simple trigonometry. And then draw it by strokePolygon method on the canvas.
The strategy that my group used was we created the top left hexagon and then translated it according to the its row and column.
For selection there is a Polygon object class in java which has a contains method. So we can use that.