Ho una tabella una tabella postgis di isoline che è definita in questo modo:
CREATE TABLE myisolines
(
gid serial NOT NULL,
isotime timestamp without timezone,
val numeric(10,4),
geom geometry(LineString,4326)
);
Visivamente questi oggetti linestring assomigliano a questo:

Conosco l'estensione spaziale dei miei dati, quindi posso aggiungere un Bbox, quindi LineStrings può essere chiuso.

Voglio creare una tabella di isopoligoni myisopolygonsda myisolinestabella, con poligoni, che non si sovrappongano ma creano una superficie continua e hanno una colonna valcon il più basso valdi isoline, da cui è stato formato il poligono. Capisco che può essere formato da isoline (isola) auto-chiuso, o isoline chiuso con bbox, in quel caso valdovrebbe essere preso da quel particolare isoline. Visivamente dovrebbe apparire così:

Pensavo di poter creare la topologia in qualche modo e quindi trasformare le facce in poligoni, ma non capisco come farlo correttamente. Come si può fare?
Un'altra opzione sarebbe quella di utilizzare ricorsivamente una funzione di differenza tra bbox e ciascun poligono creato, ma immagino che non sia il modo giusto per farlo, e sicuramente non è affatto veloce.