Bonsoir,<div><br></div><div>j'ai regardé ce soir comment résoudre le problème des polygones de très grandes tailles. Tout n'est pas résolu mais le plus gros du travail théorique est fait. J'ai donc essayé la technique sur le polygone de la Seine Et Marne. La technique est de faire une différence entre les polygones existants et le polygone Corine. Maintenant je peux étendre la requête  a tous les polygones qui ont une certaine taille et qui n'ont pas été importés.</div>
<div>Je me pose la question sur comment on procède maintenant. Je vais continuer a améliorer la requête mais il faut voir.</div><div>Maintenant, pour ceux qui veulent voir la requête qui fait peur, voila! A noter que pour faire fonctionner la requête sur tous les polygones, il faudra faire un group by et d'autres jolies requêtes imbriquées supplémentaires, mais la requête est faite globalement.</div>
<div><br></div><div><div>SELECT<span class="Apple-tab-span" style="white-space:pre">    </span>p.geomdump,</div><div><span class="Apple-tab-span" style="white-space:pre">  </span>        p.pathdump[1]</div><div>FROM<span class="Apple-tab-span" style="white-space:pre">    </span>(<span class="Apple-tab-span" style="white-space:pre">   </span>SELECT<span class="Apple-tab-span" style="white-space:pre">      </span>(ST_Dump(ST_Difference(l.the_geom, mp.way))).geom AS geomdump,</div>
<div><span class="Apple-tab-span" style="white-space:pre">                      </span>                (ST_Dump(ST_Difference(l.the_geom, mp.way))).path AS pathdump</div><div><span class="Apple-tab-span" style="white-space:pre">                </span>        FROM<span class="Apple-tab-span" style="white-space:pre">        </span>(<span class="Apple-tab-span" style="white-space:pre">   </span>SELECT<span class="Apple-tab-span" style="white-space:pre">      </span>ST_Multi(ST_Union(pop.way)) AS way</div>
<div><span class="Apple-tab-span" style="white-space:pre">                              </span>                FROM<span class="Apple-tab-span" style="white-space:pre">        </span>planet_osm_polygon AS pop</div><div><span class="Apple-tab-span" style="white-space:pre">                                    </span>                        INNER JOIN</div>
<div><span class="Apple-tab-span" style="white-space:pre">                                      </span>                        landuse AS l</div><div><span class="Apple-tab-span" style="white-space:pre">                                         </span>                            ON l."CLC:id" = 'FR-6749'</div>
<div><span class="Apple-tab-span" style="white-space:pre">                                                      </span>                         AND ST_Intersects(pop.way, l.the_geom)</div><div><span class="Apple-tab-span" style="white-space:pre">                              </span>                WHERE<span class="Apple-tab-span" style="white-space:pre">       </span>pop.landuse IS NOT NULL</div>
<div><span class="Apple-tab-span" style="white-space:pre">                                      </span>                        OR pop.aeroway IS NOT NULL</div><div>                               <span class="Apple-tab-span" style="white-space:pre">                                    </span>OR pop.natural IS NOT NULL</div>
<div>                           <span class="Apple-tab-span" style="white-space:pre">                                   </span>OR pop.wood IS NOT NULL</div><div>                <span class="Apple-tab-span" style="white-space:pre">                                      </span>OR pop.waterway='riverbank'</div>
<div>                         <span class="Apple-tab-span" style="white-space:pre">             </span>) AS mp,</div><div>                           <span class="Apple-tab-span" style="white-space:pre">          </span>landuse AS l</div><div>
                        WHERE<span class="Apple-tab-span" style="white-space:pre">    </span>l."CLC:id" = 'FR-6749'</div><div>         <span class="Apple-tab-span" style="white-space:pre">    </span>) AS p</div>
<div><br></div><div>Dans le cas présent, cette requête génère 60 polygones au lieu d'un seul. Cela veut dire que de découper un polygone peut conduire a la création de beaucoup plus de polygones. Celui ci est constitue d'un très gros polygone, et pleins de tous petits.</div>
<div><br></div><div>Émilie Laffray</div></div>