If there is a gap between two polygons is it possible to fill it? Much like what happens using the hatch function in AutoCAD. The output would be a new polygon in place of the gap.
I don't know if QGIS has such tool but you can find that from OpenJUMP. The name of the tool is "Create Polygon from Closed Area.
For using the tool just click inside the closed area. New polygon can be created on any layer and in the image below I put into the red layer.
The tool is also topological and the closed area is searched by analysing all visible layers of the project. Here, find the closed area between green and red polygons and place the new polygon into orange layer.
OpenJUMP can save the result as shapefile or as OpenJUMP JML format. QGIS can read both and you can continue your work with QGIS, which is much more advanced software in many other areas.
I think this is what you're looking for: QGIS - Creating a new polygon layer from the space between other layers
Otherwise you can use the tracing tool and digitize it yourself.
In QGIS, I recommend Digitizing Tools plugin.
It has many icons, but what you need is Fill gaps which is 9th icon from the left.
By clicking on a small triangle button, you can select your desired tool from two options:
First one is Interactive mode which allows you to select the gap you want to fill. And the second one will fill all gaps at once.
One good thing about this tool is that the polygons surrounding the gaps do not have to be topologically correct- They can overlap each other. (Just make sure the gap is a closed area).