184 | | select count(*) from geobs2010.bdmap_ccm2; --13695 this one is with repeated projection on ccm riversegments within 300 m |
185 | | select count(*) from geobs2010.bdmap_ccm; --8884 this is without selection (first treatment) for the riversegement corresponding to the lowest proj dist |
186 | | /* |
187 | | REQUEST WITH SELECTION OF CORRECT CRITERIA FOR dist SEA, dist SOURCE, (STRAHLER RANK not taken) |
188 | | */ |
189 | | select * from ( |
190 | | select b.st_codecsp, |
191 | | b.dist_source as dist_source_bdcar, |
192 | | c.dist_source_ccm/1000 as dist_source_ccm, |
193 | | (((c.dist_source_ccm/(1000*b.dist_source))<1.3) AND |
194 | | (c.dist_source_ccm/(1000*b.dist_source))>0.7) OR |
195 | | ((c.dist_source_ccm/1000-b.dist_source)> -20 AND |
196 | | (c.dist_source_ccm/1000-b.dist_source)<20) AS dist_source_ratio, |
197 | | b.dist_sea as dist_sea_bdcar, |
198 | | c.dist_sea_ccm/1000 as dist_sea_ccm, |
199 | | NOT((c.dist_sea_ccm/(1000*b.dist_sea))>2 and c.dist_sea_ccm>100000) as dist_sea_ratio, |
200 | | b.strahler as strahler_bdcar, |
201 | | c.strahler_ccm as strahler_ccm, |
202 | | (c.strahler_ccm-b.strahler)<=1 as strahler_diff, |
203 | | b.distance as distproj_bdcar, |
204 | | c.distance as distproj_ccm, |
205 | | id_trhyd, |
206 | | gid, |
207 | | c.the_geom |
208 | | from geobs2010.roe_bd_carthage b join geobs2010.bdmap_ccm2 c on b.st_codecsp=c.st_codecsp |
209 | | where b.dist_sea>0) as sub |
210 | | WHERE (dist_source_ratio is TRUE OR dist_source_ratio IS NULL) |
211 | | AND dist_sea_ratio is TRUE |
212 | | --AND strahler_diff is TRUE; |
213 | | --9837 lines this is with repeated stations but selection has removed ~ 3000 lines |
214 | | /* |
215 | | FINAL REQUEST |
216 | | */ |
217 | | drop table if exists geobs2010.bdmap_ccm_final; |
218 | | create table geobs2010.bdmap_ccm_final as ( |
219 | | select distinct on(st_codecsp) st_codecsp, |
220 | | gid, |
221 | | id_trhyd, |
222 | | dist_source_bdcar, |
223 | | dist_source_ccm, |
224 | | dist_sea_bdcar, |
225 | | dist_sea_ccm, |
226 | | strahler_bdcar, |
227 | | strahler_ccm, |
228 | | distproj_bdcar, |
229 | | min(distproj_ccm) as distproj_ccm, |
230 | | the_geom |
231 | | from( select * |
232 | | from ( |
233 | | select b.st_codecsp, |
234 | | b.dist_source as dist_source_bdcar, |
235 | | c.dist_source_ccm/1000 as dist_source_ccm, |
236 | | (((c.dist_source_ccm/(1000*b.dist_source))<1.3) AND |
237 | | (c.dist_source_ccm/(1000*b.dist_source))>0.7) OR |
238 | | ((c.dist_source_ccm/1000-b.dist_source)> -20 AND |
239 | | (c.dist_source_ccm/1000-b.dist_source)<20) AS dist_source_ratio, |
240 | | b.dist_sea as dist_sea_bdcar, |
241 | | c.dist_sea_ccm/1000 as dist_sea_ccm, |
242 | | NOT((c.dist_sea_ccm/(1000*b.dist_sea))>2 and c.dist_sea_ccm>100000) as dist_sea_ratio, |
243 | | b.strahler as strahler_bdcar, |
244 | | c.strahler_ccm as strahler_ccm, |
245 | | (c.strahler_ccm-b.strahler)<=1 as strahler_diff, |
246 | | b.distance as distproj_bdcar, |
247 | | c.distance as distproj_ccm, |
248 | | id_trhyd, |
249 | | gid, |
250 | | c.the_geom |
251 | | from geobs2010.roe_bd_carthage b join geobs2010.bdmap_ccm2 c on b.st_codecsp=c.st_codecsp |
252 | | where b.dist_sea>0 |
253 | | ) as sub |
254 | | WHERE (dist_source_ratio is TRUE or dist_source_ratio is NULL) |
255 | | AND dist_sea_ratio is TRUE |
256 | | --AND strahler_diff is TRUE |
257 | | ) as sub1 |
258 | | group by st_codecsp, gid,id_trhyd,dist_source_bdcar,dist_source_ccm,dist_sea_bdcar,dist_sea_ccm,strahler_bdcar,strahler_ccm,distproj_bdcar, distproj_ccm, |
259 | | the_geom |
260 | | order by st_codecsp |
261 | | ) ; |
263 | | /* |
264 | | * ANALYSIS OF WITHDRAWN NUMBERS |
265 | | */ |
266 | | select count(*) from geobs2010.roe_bd_carthage where dist_source=0 ;-- 0 |
267 | | select count(*) from geobs2010.roe_bd_carthage where dist_sea=0; -- 5 |
268 | | -- voir comment on gère ces cas particuliers par la suite.... |
269 | | select sum(cast(not(dist_sea_ratio) as integer)) as sum_pb_sea, |
270 | | sum(cast(not(dist_source_ratio) as integer)) as sum_pb_source, |
271 | | sum(cast((dist_source_ratio is NULL) as integer)) as sum_pb_source_NULL, |
272 | | sum(cast(not(strahler_diff) as integer)) as sum_pb_strahler |
273 | | from ( |
274 | | select b.st_codecsp, |
275 | | b.dist_source as dist_source_bdcar, |
276 | | c.dist_source_ccm/1000 as dist_source_ccm, |
277 | | (((c.dist_source_ccm/(1000*b.dist_source))<1.3) AND |
278 | | (c.dist_source_ccm/(1000*b.dist_source))>0.7) OR |
279 | | ((c.dist_source_ccm/1000-b.dist_source)> -20 AND |
280 | | (c.dist_source_ccm/1000-b.dist_source)<20) AS dist_source_ratio, |
281 | | b.dist_sea as dist_sea_bdcar, |
282 | | c.dist_sea_ccm/1000 as dist_sea_ccm, |
283 | | NOT((c.dist_sea_ccm/(1000*b.dist_sea))>2 and c.dist_sea_ccm>100000) as dist_sea_ratio, |
284 | | b.strahler as strahler_bdcar, |
285 | | c.strahler_ccm as strahler_ccm, |
286 | | (c.strahler_ccm-b.strahler)<=1 as strahler_diff, |
287 | | b.distance as distproj_bdcar, |
288 | | c.distance as distproj_ccm, |
289 | | id_trhyd, |
290 | | gid, |
291 | | c.the_geom |
292 | | from geobs2010.roe_bd_carthage b join geobs2010.bdmap_ccm2 c on b.st_codecsp=c.st_codecsp |
293 | | where b.dist_sea>0 |
294 | | ) as sub; -- 12 (R=12), 1814-169 NULLS (R=2027 including zero), 457 (R=457) OK |
295 | | /* |
296 | | * TABLE TO SHOW THE RESULTS IN A MAP FOR THOSE THAT WERE NOT SELECTED TOO |
297 | | */ |
| 185 | }}} |
299 | | drop table if exists geobs2010.bdmap_ccm_full; |
300 | | create table geobs2010.bdmap_ccm_full as ( |
301 | | select b.st_codecsp, |
302 | | b.dist_source as dist_source_bdcar, |
303 | | c.dist_source_ccm/1000 as dist_source_ccm, |
304 | | (((c.dist_source_ccm/(1000*b.dist_source))<1.3) AND |
305 | | (c.dist_source_ccm/(1000*b.dist_source))>0.7) OR |
306 | | ((c.dist_source_ccm/1000-b.dist_source)> -20 AND |
307 | | (c.dist_source_ccm/1000-b.dist_source)<20) AS dist_source_ratio, |
308 | | b.dist_sea as dist_sea_bdcar, |
309 | | c.dist_sea_ccm/1000 as dist_sea_ccm, |
310 | | NOT((c.dist_sea_ccm/(1000*b.dist_sea))>2 and c.dist_sea_ccm>100000) as dist_sea_ratio, |
311 | | b.strahler as strahler_bdcar, |
312 | | c.strahler_ccm as strahler_ccm, |
313 | | (c.strahler_ccm-b.strahler)<=1 as strahler_diff, |
314 | | b.distance as distproj_bdcar, |
315 | | c.distance as distproj_ccm, |
316 | | id_trhyd, |
317 | | gid, |
318 | | c.the_geom |
319 | | from geobs2010.roe_bd_carthage b join geobs2010.bdmap_ccm2 c on b.st_codecsp=c.st_codecsp |
320 | | where b.dist_sea>0); |
321 | | }}} |
322 | | v0.1 There is a problem of distance source too short for bd_carthage this trouble was already seen on the first figure on this page [[BR]] |
323 | | [[Image(source:data/Docs/trac/BDMAP/stations_selection_1.jpg,700px)]] [[BR]] |
324 | | Reference for the qgis project for Cédric ''' c/eda/bdmpa/projection_bdmap.qgs ''' |
325 | | En normandie, pas mal de segments manquants.. Pourquoi ? Le ratio distance source est null, l'autoriser |
326 | | Problèmes de calculs bd_carthage sur les rivières en réseau... |
327 | | |
328 | | 10896 station sp2=> 8884 projetées à 300m => 6896 après projection final |
329 | | Après examen détaillé il s'agit plus de calculs de distances sources que de réels problèmes de projection. |
330 | | A vérifier sur les pb de rang de strahler.... |