Usare i Postgis per generare sfumature di edifici


9

Attualmente sto lavorando a uno strumento di stima del potenziale solare per edifici esistenti. L'idea è di utilizzare la forma degli edifici (= poligono), la loro altezza e creare l'ombra risultante in una determinata ora. Ho intenzione di fare il test solo per alcune posizioni del sole. Conosco la funzione erba r.sun.mask ma è sopraffatta per quello che sto cercando di fare.

Per ora voglio solo avere l'ombra quando il sole è a sud, a 18 ° nel cielo. L'edificio dovrebbe quindi proiettare un'ombra circa tre volte la sua altezza.

Cosa sto cercando di ottenere:

Quello che sto cercando di ottenere

Ho cercato per un po 'ma non ho trovato alcun strumento in Postgis per farlo. Stavo pensando al buffering e quindi al taglio del poligono ma non riuscivo a farlo funzionare. Conosci qualche strumento o hai idea di come farlo?

Risposte:


8

Il modo più semplice per farlo è con un

ST_Extrude (geom, direzione x, y-direzione, 0)

. Si dovrà calcolare il fattore di estrusione da soli, naturalmente, e si assume tutta la vostra poligono è la stessa altezza (nel tuo esempio, estrusione sarebbe come: ST_Extrude(geom, 0, 3.0*height, 0))

Ecco il manuale su ST_Extrude. Tieni presente che hai bisogno di Postgis con SFCGAL per questo, controlla i documenti di installazione su come ottenerlo se non lo hai già.


La forma di output è quella che desidero, tuttavia la superficie poliedrica non può essere intersecata con un poligono. Ho provato ST_Force2D sul poliedrico e poi l'ho intersecato con il mio poligono ma non funziona. Esiste un'altra funzione con un formato di output più pratico o un modo per convertire questa superficie poliedrica in poligono?
aeboq,

2
Sì, puoi scaricarlo su poligoni normali. Esempio:SELECT ST_AsText((ST_Dump(ST_Extrude(ST_MakeEnvelope(10,10,100,100,28992),0,8,0))).geom)
inclinazione del

0

Potrebbe valere la pena considerare di esportare da QGIS a Blender in quanto ciò consentirebbe di posizionare il sole come una luce e animare durante il giorno e tutto l'anno. Ho trovato un flusso di lavoro qui che sembra rilevante.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.