Floats on their own on float pages

It’s sometimes necessary to force a float to live on a page by itself. (It’s sometimes even necessary for every float to live on a page by itself.) When the float fails to ‘set’, and waits for the end of a chapter or of the document, the natural thing to do is to declare the float as

but the overriding ! modifier has no effect on float page floats; so you have to make the float satisfy the parameters. Moving tables and figures offers some suggestions, but doesn’t solve the one-float-per-page question.

The ‘obvious’ solution, using the counter totalnumber (“total number of floats per page”) doesn’t work: totalnumber only applies to floats on ‘text’ pages (pages containing text as well as one or more float). So, to allow any size float to take a whole page, set \floatpagefraction really small, and to ensure that no more than one float occupies a page, make the separation between floats really big: