Dwie funkcje ST_BuildArea
i ST_Polygonize
obie przyjmują linie i wytwarzają wielokąty.
Wydaje się, że ST_BuildArea
zakłada się, że pierścienie wewnętrzne reprezentują dziury i pomija je w wyniku, a jednocześnie ST_Polygonize
uwzględnia je w wyniku. A mechanika korzystania z funkcji jest nieco inna: ST_Polygonize
jest agregacją, podczas gdy sam ST_BuildArea
wymaga spakowania danych wejściowych ST_Collect
.
Poza tym, czy są jakieś różnice między tymi dwiema funkcjami?
Odpowiedzi:
To nie jest pełna odpowiedź, ale może być punktem wyjścia dla kogoś, kto szuka więcej szczegółów.
ST_Polygonize
(w formiepolygonize_garray
) iST_BuildArea
są zdefiniowane w kodzie źródłowym (dublowanie) na https://github.com/postgis/postgis/blob/svn-trunk/postgis/lwgeom_geos.c .Oba ostatecznie wywołują
GEOSPolygonize
, co jest zdefiniowane w GEOS , który jest portem C / C ++ pakietu Java Topology Suite .I z dokumentów -
źródło