Why is this Shape not being created?

my code creates a building with a roof and windows.

All lines are being drawn with SingleLineGeometry.
The pure building is being created with an ExtrudeGeometry, which uses floorpoints as a Shape.
The Roof is being created by 4 roofpoints and 2 additional points that are the roof ridge.
It also is being painted by iterating over the Shape Geometries faces and adding the material to every face of the roof.
I wanted to do the same thing for the windows so that they have colour as well but somehow it does not work.

Here is a jsfiddle: https://jsfiddle.net/dash1/oystuv60/117/
relevant lines for the windows are from 265 to 290.

It is also worth mentioning that the Geometry.faces.length of the roof shapes are 4 and 3 as they should be but the ones of the windows are always 0.

Hopefully someone can help me.
Thanks in advance

It looks like it’s a problem with the data type precision again.
I tried to do it with BufferGeometry and it starts coloring but with every movement of the mouse or keyboard it changes.

let winsideshapeGeom = new THREE.BufferGeometry();
let winsidemesh = new THREE.Mesh(winsideshapeGeom, new THREE.MeshBasicMaterial({
                    color: "#819FF7", // light blue
                    side: THREE.DoubleSide,

One Window has these points: ( 6 points and not 4 because of the BufferGeometry )

x: -0.0050895336938431655, y: 0.002143718358557703, z: 0.003
x: -0.0050895336938431655, y: 0.002143718358557703, z: 0.0033
x: -0.004736779504047902, y: 0.0023323038340903853, z: 0.0033
x: -0.004736779504047902, y: 0.0023323038340903853, z: 0.0033
x: -0.004736779504047902, y: 0.0023323038340903853, z: 0.003
x: -0.0050895336938431655, y: 0.002143718358557703, z: 0.003

While the roof points look like this:

x: -0.004362754082194442, y: 0.0025322610963485204, z: 0.0036
x: -0.0029410269393110866, y: 0.0013068610960544902, z: 0.0046
x: -0.003260225048961729, y: 0.003121861096133216, z: 0.0036

The roof with BufferGeometry or with ShapeGeometry is just as it should be without changing while moving but the windows aren’t.

Does anybody know a work around?
I tried multiplying to erase the unnecessary zeros but the coordinates are just totally wrong afterwards.

The attached screen shot shows a shape that was created on the ground plane and in free space. I can create surfaces or extrude solids from that shape www.tellthebell.com and the program used is a low end solid modeller from 2010. A major difference with Fusion 360 is that if the program does not recognise the shape as a closed shape then it cannot be extruded.