J'essaie de diviser un polygone en petits polygones à partir d'une ligne, mais je pense que je ne peux pas utiliser la fonction st_split. Ce dont j'ai besoin, c'est de créer de petits polygones à l'intérieur d'un grand, en utilisant une grille de lignes linéaires.
J'ai essayé plusieurs façons, mais je n'arrive pas à obtenir le résultat. Ce que j'ai essayé:
Divisez un polygone d'une ligne de chaîne à l'aide de st_split ()
À partir d'un polygone limite.
Et table Linestring:
J'aurais besoin des polygones suivants:
Problème : je ne peux pas séparer un polygone de plusieurs lignes, ni un polygone d'une chaîne multiligne.
L'autre méthode que j'essaie est de créer un polygone à partir des lignes avec st_polygonize () Le SQL que j'essayais est:
SELECT
g.path[1] as gid,
g.geom::geometry(polygon, 22033) as geom
FROM
(SELECT
(ST_Dump(ST_Polygonize(geom))).*
FROM linestable
) as g;
Extrait de la création de polygones à partir de segments de ligne à l'aide de PostgreSQL et PostGIS
Problème : je ne peux obtenir qu'un seul polygone (la frontière).
Quelqu'un peut-il me dire quelle serait la meilleure façon d'obtenir les polygones de la chaîne de caractères, ou si je manque quelque chose?
Remarque: les tables sont dans le même SRID et les géométries sont alignées dans une grille. Dans QGIS, je peux parfaitement exécuter le processus de polygonisation des lignes au polygone.
Comme la demande de John, voici la table de ligne de ligne. https://drive.google.com/file/d/0B603y_m735jfS014S0EyVnpMUEU/view?usp=sharing