You are right, it is odd. There is nothing wrong with your code. The render of polygons is the correct answer to your code. In preview, OpenSCAD have the vice of representing polygons extruded by one unit. But it is just a representation; polygons still have no volume.
BTW, you don't so much zeros to represent numbers. Internally they are double floats.
It is also better to use larger numbers, ATM OpenSCAD can have issues at such small dimensions.
Work 10x or 100x larger, then if needed scale down the end result.
Admin - PM me if you need anything, or if I've done something stupid...
Unless specifically shown otherwise above, my contribution is in the Public Domain; to the extent possible under law, I have waived all copyright and related or neighbouring rights to this work. Obviously inclusion of works of previous authors is not included in the above.
The TPP is no simple “trade agreement.”Fight it! http://www.ourfairdeal.org/ time is running out!
Thanks for the hints!
Sorry for the many zeros in my code, it is SolidPython generated.
I have tried to do it with an about 100 times upscale, but I stiil don't get the result what I expect.
I have removed the offset() from the code to make it even simpler:
Hull can work on 2D shapes or on 3D shapes. It doesn't work on a mixture of both or a 2D shape with a Z offset. In fact you should never apply Z offsets to 2D objects. Think of them living in a flat 2D world. Extrude is needed to bring them into the 3D world.
OpenSCAD should ignore Z for 2D objects but it actually does inconsistent things with it.