Highlight the Bounding Box, Part II: Hexagonal Grid
Pyth, 82 71 bytes


L,hbebMqH@S+GH1KhMyJs.e,Lkfq\#@bTUb.zA,ySm-FdJySsMJj.es.eXW&&gKkgG-kYgH+kYZ\.\#b.z
MqH@S[hGHeG)1j.es.eXW&&ghMJs.e,Lkfq\#@bTUb.zkgSm-FdJ-kYgSsMJ+kYZ\.\#b.z


Try it online!

Explanation


Let A be the point with the lowest y-coordinate and B the point with the highest y-coordinate.
Let C be the point with the lowest (x-value minus y-value) and D the point with the highest.
Let E be the point with the lowest (x-value plus y-value) and F the point with the highest.


Then it is equivalent to finding the coordinates which the y-coordinate is between A and B, the x-value minus y-value is between C and D, and the x-value plus y-value is between E and F.