CC48 -> Lambert 93
This commit is contained in:
parent
fe74f7a97b
commit
ce2501dd02
|
@ -1,13 +1,13 @@
|
||||||
|
|
||||||
-- on est obligé de créer des tables en 3948
|
-- on est obligé de créer des tables en Lambert 93 (EPSG:2154) (ou une CC conforme)
|
||||||
-- car même si les tables original sont déclarées en 3857
|
-- car même si les tables original sont déclarées en 3857
|
||||||
-- en fait les géoémtries sont en 4326
|
-- en fait les géoémtries sont en 4326
|
||||||
-- donc les calculs de longueur sont faux
|
-- donc les calculs de longueur sont faux
|
||||||
-- au moins en créant une table en dur en 3948 on est sûr des longueurs
|
-- au moins en créant une table en dur en Lambert 93 / 2154 on est sûr des longueurs
|
||||||
|
|
||||||
|
|
||||||
-- la table secteur gère les grands découpage de gestion
|
-- la table secteur gère les grands découpage de gestion
|
||||||
DROP TABLE secteur CASCADE ;
|
DROP TABLE IF EXISTS secteur CASCADE ;
|
||||||
CREATE TABLE secteur
|
CREATE TABLE secteur
|
||||||
(
|
(
|
||||||
id integer,
|
id integer,
|
||||||
|
@ -32,35 +32,35 @@ INSERT INTO secteur VALUES (10,'Sant-Brieg -> Gwengamp','Saint-Brieuc -> Gwengam
|
||||||
INSERT INTO secteur VALUES (999,'test','test');
|
INSERT INTO secteur VALUES (999,'test','test');
|
||||||
|
|
||||||
|
|
||||||
DROP TABLE phase_1_trace_3948 CASCADE ;
|
DROP TABLE IF EXISTS phase_1_trace CASCADE ;
|
||||||
CREATE TABLE phase_1_trace_3948
|
CREATE TABLE phase_1_trace
|
||||||
(
|
(
|
||||||
ogc_fid integer,
|
ogc_fid integer,
|
||||||
name text,
|
name text,
|
||||||
secteur int,
|
secteur_id int,
|
||||||
ordre int,
|
ordre int,
|
||||||
longueur numeric,
|
longueur numeric,
|
||||||
the_geom geometry(LineString,3948),
|
the_geom geometry(LineString,2154),
|
||||||
CONSTRAINT phase_1_trace_3948_pkey PRIMARY KEY (ogc_fid),
|
CONSTRAINT phase_1_trace_pkey PRIMARY KEY (ogc_fid),
|
||||||
CONSTRAINT enforce_geotype_the_geom CHECK (geometrytype(the_geom) = 'LINESTRING'::text),
|
CONSTRAINT enforce_geotype_the_geom CHECK (geometrytype(the_geom) = 'LINESTRING'::text),
|
||||||
CONSTRAINT enforce_srid_the_geom CHECK (st_srid(the_geom) = 3948)
|
CONSTRAINT enforce_srid_the_geom CHECK (st_srid(the_geom) = 2154)
|
||||||
);
|
);
|
||||||
|
|
||||||
DROP TABLE phase_1_pk_vip_3948 CASCADE ;
|
DROP TABLE IF EXISTS phase_1_pk_vip CASCADE ;
|
||||||
CREATE TABLE phase_1_pk_vip_3948
|
CREATE TABLE phase_1_pk_vip
|
||||||
(
|
(
|
||||||
ogc_fid integer,
|
ogc_fid integer,
|
||||||
name text,
|
name text,
|
||||||
description text,
|
description text,
|
||||||
the_geom geometry(Point,3948),
|
the_geom geometry(Point,2154),
|
||||||
CONSTRAINT phase_1_pk_vip_3948_pkey PRIMARY KEY (ogc_fid),
|
CONSTRAINT phase_1_pk_vip_pkey PRIMARY KEY (ogc_fid),
|
||||||
CONSTRAINT enforce_geotype_the_geom CHECK (geometrytype(the_geom) = 'POINT'::text),
|
CONSTRAINT enforce_geotype_the_geom CHECK (geometrytype(the_geom) = 'POINT'::text),
|
||||||
CONSTRAINT enforce_srid_the_geom CHECK (st_srid(the_geom) = 3948)
|
CONSTRAINT enforce_srid_the_geom CHECK (st_srid(the_geom) = 2154)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
-- on crée aussi une version correcte en 4326 pour export vers umap
|
-- on crée aussi une version correcte en 4326 pour export vers umap
|
||||||
DROP TABLE phase_1_trace_4326 ;
|
DROP TABLE IF EXISTS phase_1_trace_4326 ;
|
||||||
CREATE TABLE phase_1_trace_4326
|
CREATE TABLE phase_1_trace_4326
|
||||||
(
|
(
|
||||||
ogc_fid integer,
|
ogc_fid integer,
|
||||||
|
@ -77,47 +77,47 @@ CREATE TABLE phase_1_trace_4326
|
||||||
|
|
||||||
|
|
||||||
-- table des tronçons créés à partir des longs tracés
|
-- table des tronçons créés à partir des longs tracés
|
||||||
DROP TABLE phase_1_trace_troncons_3948 CASCADE ;
|
DROP TABLE IF EXISTS phase_1_trace_troncons CASCADE ;
|
||||||
CREATE TABLE phase_1_trace_troncons_3948
|
CREATE TABLE phase_1_trace_troncons
|
||||||
(
|
(
|
||||||
uid bigint,
|
uid bigint,
|
||||||
secteur int,
|
secteur_id int,
|
||||||
ordre bigint,
|
ordre bigint,
|
||||||
km bigint,
|
km bigint,
|
||||||
km_reel bigint,
|
km_reel bigint,
|
||||||
longueur integer,
|
longueur integer,
|
||||||
the_geom geometry(LineString,3948),
|
the_geom geometry(LineString,2154),
|
||||||
CONSTRAINT phase_1_trace_troncons_3948_pkey PRIMARY KEY (uid),
|
CONSTRAINT phase_1_trace_troncons_pkey PRIMARY KEY (uid),
|
||||||
CONSTRAINT enforce_geotype_the_geom CHECK (geometrytype(the_geom) = 'LINESTRING'::text),
|
CONSTRAINT enforce_geotype_the_geom CHECK (geometrytype(the_geom) = 'LINESTRING'::text),
|
||||||
CONSTRAINT enforce_srid_the_geom CHECK (st_srid(the_geom) = 3948)
|
CONSTRAINT enforce_srid_the_geom CHECK (st_srid(the_geom) = 2154)
|
||||||
);
|
);
|
||||||
|
|
||||||
ALTER TABLE phase_1_trace_3948 OWNER to redadeg;
|
ALTER TABLE phase_1_trace OWNER to redadeg;
|
||||||
ALTER TABLE phase_1_trace_4326 OWNER to redadeg;
|
ALTER TABLE phase_1_trace_4326 OWNER to redadeg;
|
||||||
ALTER TABLE phase_1_pk_vip_3948 OWNER to redadeg;
|
ALTER TABLE phase_1_pk_vip OWNER to redadeg;
|
||||||
ALTER TABLE phase_1_trace_troncons_3948 OWNER to redadeg;
|
ALTER TABLE phase_1_trace_troncons OWNER to redadeg;
|
||||||
|
|
||||||
-- table des PK auto en fin de tronçon
|
-- table des PK auto en fin de tronçon
|
||||||
/*DROP TABLE phase_1_pk_auto_3948 ;
|
/*DROP TABLE phase_1_pk_auto ;
|
||||||
CREATE TABLE phase_1_pk_auto_3948
|
CREATE TABLE phase_1_pk_auto
|
||||||
(
|
(
|
||||||
uid bigint,
|
uid bigint,
|
||||||
secteur character varying(25),
|
secteur character varying(25),
|
||||||
km bigint,
|
km bigint,
|
||||||
km_reel bigint,
|
km_reel bigint,
|
||||||
the_geom geometry(Point,3948),
|
the_geom geometry(Point,2154),
|
||||||
CONSTRAINT phase_1_pk_auto_3948_pkey PRIMARY KEY (uid),
|
CONSTRAINT phase_1_pk_auto_pkey PRIMARY KEY (uid),
|
||||||
CONSTRAINT enforce_geotype_the_geom CHECK (geometrytype(the_geom) = 'POINT'::text),
|
CONSTRAINT enforce_geotype_the_geom CHECK (geometrytype(the_geom) = 'POINT'::text),
|
||||||
CONSTRAINT enforce_srid_the_geom CHECK (st_srid(the_geom) = 3948)
|
CONSTRAINT enforce_srid_the_geom CHECK (st_srid(the_geom) = 2154)
|
||||||
);*/
|
);*/
|
||||||
|
|
||||||
-- vue des PK auto en fin de tronçon
|
-- vue des PK auto en fin de tronçon
|
||||||
DROP VIEW IF EXISTS phase_1_pk_auto_3948 ;
|
DROP VIEW IF EXISTS phase_1_pk_auto ;
|
||||||
CREATE VIEW phase_1_pk_auto_3948 AS
|
CREATE VIEW phase_1_pk_auto AS
|
||||||
SELECT
|
SELECT
|
||||||
uid, secteur, ordre, km, km_reel,
|
uid, secteur, ordre, km, km_reel,
|
||||||
ST_Line_Interpolate_Point(the_geom, 1)::geometry(Point, 3948) AS the_geom
|
ST_Line_Interpolate_Point(the_geom, 1)::geometry(Point, 2154) AS the_geom
|
||||||
FROM phase_1_trace_troncons_3948
|
FROM phase_1_trace_troncons
|
||||||
ORDER BY secteur ASC, ordre ASC, km ASC ;
|
ORDER BY secteur ASC, ordre ASC, km ASC ;
|
||||||
|
|
||||||
-- la même mais en 4326 pour export
|
-- la même mais en 4326 pour export
|
||||||
|
@ -126,10 +126,10 @@ CREATE VIEW phase_1_pk_auto_4326 AS
|
||||||
SELECT
|
SELECT
|
||||||
uid, secteur, ordre, km, km_reel,
|
uid, secteur, ordre, km, km_reel,
|
||||||
ST_Transform(the_geom,4326)::geometry(Point, 4326) AS the_geom
|
ST_Transform(the_geom,4326)::geometry(Point, 4326) AS the_geom
|
||||||
FROM phase_1_pk_auto_3948
|
FROM phase_1_pk_auto
|
||||||
ORDER BY secteur ASC, ordre ASC, km ASC ;
|
ORDER BY secteur ASC, ordre ASC, km ASC ;
|
||||||
|
|
||||||
ALTER TABLE phase_1_pk_auto_3948 OWNER to redadeg;
|
ALTER TABLE phase_1_pk_auto OWNER to redadeg;
|
||||||
ALTER TABLE phase_1_pk_auto_4326 OWNER to redadeg;
|
ALTER TABLE phase_1_pk_auto_4326 OWNER to redadeg;
|
||||||
|
|
||||||
|
|
||||||
|
@ -141,7 +141,7 @@ CREATE VIEW tdb_secteur_longueur AS
|
||||||
SUM(longueur) AS longueur_m,
|
SUM(longueur) AS longueur_m,
|
||||||
TRUNC( SUM(longueur)/1000::numeric , 3) AS longueur_km,
|
TRUNC( SUM(longueur)/1000::numeric , 3) AS longueur_km,
|
||||||
ROUND( SUM(longueur)/1000::numeric ) AS longueur_km_arrondi
|
ROUND( SUM(longueur)/1000::numeric ) AS longueur_km_arrondi
|
||||||
FROM v_phase_1_trace_troncons_3948
|
FROM v_phase_1_trace_troncons
|
||||||
GROUP BY secteur_id, secteur_nom_br, secteur_nom_fr
|
GROUP BY secteur_id, secteur_nom_br, secteur_nom_fr
|
||||||
ORDER BY secteur_id ;
|
ORDER BY secteur_id ;
|
||||||
|
|
||||||
|
|
|
@ -25,7 +25,7 @@ ogr2ogr -f "PostgreSQL" PG:"host=localhost user=redadeg password=redadeg dbname=
|
||||||
|
|
||||||
|
|
||||||
# on crée les tables en 3948
|
# on crée les tables en 3948
|
||||||
psql -U redadeg -d redadeg < load_tables_3948.sql
|
psql -U redadeg -d redadeg < traitements.sql
|
||||||
|
|
||||||
|
|
||||||
# et on exporte vers Geojson
|
# et on exporte vers Geojson
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
|
|
||||||
|
|
||||||
TRUNCATE phase_1_trace_3948 ;
|
TRUNCATE phase_1_trace ;
|
||||||
INSERT INTO phase_1_trace_3948
|
INSERT INTO phase_1_trace
|
||||||
SELECT
|
SELECT
|
||||||
ogc_fid,
|
ogc_fid,
|
||||||
-- name AS secteur_nom,
|
-- name AS secteur_nom,
|
||||||
|
@ -9,13 +9,13 @@ INSERT INTO phase_1_trace_3948
|
||||||
name,
|
name,
|
||||||
ordre::int,
|
ordre::int,
|
||||||
0 AS longueur,
|
0 AS longueur,
|
||||||
ST_Transform(the_geom,3948) AS the_geom
|
ST_Transform(the_geom,2154) AS the_geom
|
||||||
FROM phase_1_trace_3857
|
FROM phase_1_trace_3857
|
||||||
WHERE ST_LENGTH(the_geom) > 0
|
WHERE ST_LENGTH(the_geom) > 0
|
||||||
ORDER BY secteur_id ASC, ordre ASC ;
|
ORDER BY secteur_id ASC, ordre ASC ;
|
||||||
|
|
||||||
-- mise à jour de la longueur 1 fois la géométrie passée en CC48
|
-- mise à jour de la longueur 1 fois la géométrie passée en CC48
|
||||||
UPDATE phase_1_trace_3948
|
UPDATE phase_1_trace
|
||||||
SET longueur = TRUNC( ST_Length(the_geom)::numeric / 1000 , 2) ;
|
SET longueur = TRUNC( ST_Length(the_geom)::numeric / 1000 , 2) ;
|
||||||
|
|
||||||
|
|
||||||
|
@ -29,20 +29,20 @@ INSERT INTO phase_1_trace_4326
|
||||||
ordre::int,
|
ordre::int,
|
||||||
longueur,
|
longueur,
|
||||||
ST_Transform(the_geom,4326) AS the_geom
|
ST_Transform(the_geom,4326) AS the_geom
|
||||||
FROM phase_1_trace_3948
|
FROM phase_1_trace
|
||||||
ORDER BY secteur_id ASC, ordre ASC ;
|
ORDER BY secteur_id ASC, ordre ASC ;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
TRUNCATE phase_1_pk_vip_3948 ;
|
TRUNCATE phase_1_pk_vip ;
|
||||||
INSERT INTO phase_1_pk_vip_3948
|
INSERT INTO phase_1_pk_vip
|
||||||
SELECT ogc_fid, name, '', ST_Transform(the_geom,3948) AS the_geom
|
SELECT ogc_fid, name, '', ST_Transform(the_geom,2154) AS the_geom
|
||||||
FROM phase_1_pk_vip_3857 ;
|
FROM phase_1_pk_vip_3857 ;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
TRUNCATE phase_1_trace_troncons_3948 ;
|
TRUNCATE phase_1_trace_troncons ;
|
||||||
INSERT INTO phase_1_trace_troncons_3948
|
INSERT INTO phase_1_trace_troncons
|
||||||
SELECT
|
SELECT
|
||||||
row_number() over() as uid,
|
row_number() over() as uid,
|
||||||
secteur_id,
|
secteur_id,
|
||||||
|
@ -62,9 +62,9 @@ INSERT INTO phase_1_trace_troncons_3948
|
||||||
secteur_id,
|
secteur_id,
|
||||||
section_nom,
|
section_nom,
|
||||||
ordre,
|
ordre,
|
||||||
ST_LineMerge(the_geom)::geometry(LineString,3948) AS the_geom,
|
ST_LineMerge(the_geom)::geometry(LineString,2154) AS the_geom,
|
||||||
ST_Length(the_geom) As length
|
ST_Length(the_geom) As length
|
||||||
FROM phase_1_trace_3948
|
FROM phase_1_trace
|
||||||
-- ce tri est le plus important
|
-- ce tri est le plus important
|
||||||
ORDER BY secteur_id ASC, ordre ASC
|
ORDER BY secteur_id ASC, ordre ASC
|
||||||
) AS t
|
) AS t
|
||||||
|
@ -73,7 +73,7 @@ INSERT INTO phase_1_trace_troncons_3948
|
||||||
ORDER BY t.secteur_id ASC, t.ordre ASC ;
|
ORDER BY t.secteur_id ASC, t.ordre ASC ;
|
||||||
|
|
||||||
-- mise à jour des attributs
|
-- mise à jour des attributs
|
||||||
UPDATE phase_1_trace_troncons_3948
|
UPDATE phase_1_trace_troncons
|
||||||
SET
|
SET
|
||||||
longueur =
|
longueur =
|
||||||
(CASE
|
(CASE
|
||||||
|
@ -81,4 +81,5 @@ SET
|
||||||
ELSE TRUNC( ST_Length(the_geom)::numeric , 0)
|
ELSE TRUNC( ST_Length(the_geom)::numeric , 0)
|
||||||
END),
|
END),
|
||||||
km = uid -- km redadeg
|
km = uid -- km redadeg
|
||||||
|
;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue