MTES-MCT / dialog

Intégration de la réglementation de circulation dans les solutions numériques
https://dialog.beta.gouv.fr
GNU Affero General Public License v3.0
8 stars 0 forks source link

Route ou rue en plusieurs branches (rue en T, route à chaussées séparées, rue en morceaux disjoints …) #713

Open florimondmanca opened 3 months ago

florimondmanca commented 3 months ago

Notes diverses

Situation actuelle

On ne peut calculer une section que si les deux points demandés peuvent être rattachés à la même "ligne" (LINESTRING). Cette ligne doit être continue

Cela exclue tous les cas où la section désirée comporte une rupture de ligne, telle qu'un embranchement, un trou (même petit), un rond-point, ou autre

C'est notamment problématique pour les départementales passant d'une chaussée unique à deux chaussées avec terre plein central

Rappel : actuellement DiaLog n'a pas de notion de sens de circulation, c'est le ticket #528

Définitions

Exemples

select st_asgeojson(geometrie) from voie_nommee where nom_minuscule = 'rue du faubourg de paris' and code_insee = '59606';
{"type":"MultiLineString","coordinates":[[[3.514135975,50.353080282],[3.514161196,50.353076586],[3.514185068,50.353078282],[3.514203383,50.353085388],[3.514214709,50.353095217]],[[3.511759106,50.35324189],[3.511496827,50.353254649],[3.511196625,50.353263973],[3.511033954,50.353274523],[3.510941425,50.353282986],[3.510763528,50.353314248]],[[3.510763528,50.353314248],[3.510463138,50.353443877]],[[3.514101279,50.353118134],[3.514102554,50.35310556],[3.51410946,50.353094757],[3.514120594,50.353085733],[3.514135975,50.353080282]],[[3.514214709,50.353095217],[3.514219028,50.353105972],[3.514220532,50.353115842],[3.514219238,50.353126621]],[[3.514157763,50.353152914],[3.514135284,50.353150314],[3.51411697,50.353143208],[3.514105616,50.353130686],[3.514101279,50.353118134]],[[3.514219238,50.353126621],[3.514212323,50.353136526],[3.514198391,50.35314646],[3.514178801,50.353151928],[3.514157763,50.353152914]],[[3.514101279,50.353118134],[3.513831921,50.353124643],[3.51343213,50.353137978],[3.513200695,50.353147919],[3.512941314,50.353169647],[3.512747792,50.353182123],[3.512348138,50.353208921],[3.512034041,50.353231772],[3.511846104,50.353241529],[3.511759106,50.35324189]],[[3.514388297,50.353743607],[3.514359419,50.353663822],[3.514327671,50.353577765],[3.514296006,50.353499788],[3.514261461,50.353414641],[3.514231208,50.353337556],[3.514199488,50.353254192],[3.514180734,50.353203993],[3.514157763,50.353152914]],[[3.516589532,50.35438173],[3.516647018,50.354377],[3.516781792,50.354382721],[3.516917703,50.3543624]],[[3.516914761,50.354486309],[3.516840206,50.354468665],[3.516802227,50.354459846],[3.516765651,50.354451021],[3.516734698,50.354443071],[3.516633353,50.35441297],[3.516589532,50.35438173]],[[3.516007376,50.355088942],[3.515849837,50.354915426],[3.515723418,50.354766021]],[[3.515945508,50.354115083],[3.515910271,50.354099967]],[[3.516589532,50.35438173],[3.516465488,50.354327483],[3.516342894,50.354277719],[3.51633585,50.354275055],[3.516263974,50.35424483],[3.516211835,50.354223501],[3.516103337,50.354179962],[3.515945508,50.354115083]],[[3.515723418,50.354766021],[3.515648131,50.354676555],[3.515574292,50.354591572],[3.515499096,50.354511084],[3.515422479,50.354428806],[3.515350173,50.354356386],[3.515290642,50.354298277],[3.51523401,50.354249134],[3.515167564,50.35420093],[3.51509413,50.354155449],[3.515005306,50.35411452],[3.514906715,50.35407902],[3.514795522,50.354046265],[3.514685779,50.354017993],[3.51455362,50.353993405]],[[3.514388297,50.353743607],[3.514402777,50.353787539],[3.514414423,50.353828789],[3.514424657,50.353869148],[3.514434864,50.353906813],[3.514443639,50.353941791],[3.514449536,50.353969598]],[[3.514219238,50.353126621],[3.514458055,50.35315256],[3.514751678,50.35318635],[3.515173405,50.353260006],[3.515297344,50.353304379],[3.515400491,50.353373977],[3.515497274,50.353507346],[3.515600073,50.353680193],[3.515747077,50.353921986]],[[3.51455362,50.353993405],[3.514449536,50.353969598]],[[3.515747077,50.353921986],[3.515774243,50.353971252],[3.515826711,50.354024901],[3.515910271,50.354099967]]]}

Screenshot from 2024-04-09 10-26-40

select st_asgeojson(geometrie) from voie_nommee where nom_minuscule = 'avenue des dentellières' and code_insee = '59606';
 {"type":"MultiLineString","coordinates":[[[3.517967487,50.355059184],[3.518025389,50.355094853],[3.51805649,50.355117167],[3.518113044,50.355158229],[3.518186445,50.355200118],[3.518214676,50.355216159],[3.518242907,50.355232201],[3.518271137,50.355248243],[3.518297956,50.355263393],[3.518320537,50.355275868],[3.518336055,50.355283883],[3.518351583,50.355292796],[3.518369927,50.355302594],[3.518388289,50.355314189],[3.51841087,50.355326663],[3.518437688,50.355341813],[3.518461682,50.355355179],[3.518484272,50.355368552],[3.518508256,50.35538102],[3.518530846,50.355394392],[3.518549209,50.355405987],[3.518567543,50.355414888],[3.518584483,50.355424692],[3.518614127,50.355441626]],[[3.518474585,50.355518525],[3.518453351,50.355500659],[3.518394074,50.355467689],[3.518331981,50.355433833],[3.51826709,50.355400887],[3.51820641,50.355367923],[3.517866265,50.355178118]],[[3.518614127,50.355441626],[3.518626802,50.355446062],[3.518647962,50.355456746],[3.51866913,50.355468329],[3.518694536,50.355482587],[3.518722767,50.355498629],[3.518755217,50.355515551],[3.518787677,50.35553337],[3.518824346,50.355551172],[3.518858227,50.355570781],[3.518892108,50.355590391],[3.519529907,50.355930668],[3.519837215,50.356064943]],[[3.519466714,50.356062911],[3.519376379,50.356012117],[3.519262068,50.355949752],[3.519151958,50.355886471],[3.518971261,50.355782188],[3.518626966,50.355598688],[3.518474585,50.355518525]],[[3.52055457,50.356361785],[3.520674431,50.356417841],[3.520790102,50.35647571],[3.520881917,50.35653368],[3.520934172,50.35656578],[3.521026071,50.35663183]],[[3.521026071,50.35663183],[3.521061431,50.356658615],[3.521127932,50.356711304],[3.521164741,50.356742572],[3.521586231,50.357061306],[3.521631693,50.357114982],[3.521703938,50.357180217],[3.521736399,50.357198035]],[[3.521627832,50.357284683],[3.52153569,50.357195292],[3.521498954,50.357171207],[3.521389973,50.357081887],[3.521248457,50.356967566],[3.521101394,50.356859553],[3.521015089,50.356791685]],[[3.521736399,50.357198035],[3.521751919,50.35720605],[3.52183646,50.357238911]],[[3.519837215,50.356064943],[3.519828786,50.35606408],[3.519958589,50.356131767],[3.520047494,50.356179873],[3.520091218,50.356201236],[3.520134904,50.356219008],[3.520188395,50.356234943]],[[3.520115084,50.356338499],[3.520062978,50.356320763],[3.52000524,50.356301255],[3.519943284,50.356280866],[3.519879868,50.356255097],[3.519822075,50.356230202],[3.519764273,50.356204409],[3.519707865,50.356177713],[3.519655695,50.356153692],[3.519593646,50.356124325],[3.519466714,50.356062911]],[[3.520188395,50.356234943],[3.520255965,50.356255308],[3.520444642,50.356316461],[3.52055457,50.356361785]],[[3.521015089,50.356791685],[3.520955558,50.356734477],[3.520866457,50.356667518],[3.520764735,50.35660151],[3.520687055,50.356553356],[3.520569999,50.356497288],[3.520505143,50.356467934],[3.520402287,50.356427967],[3.520350144,50.356406639],[3.520293819,50.356388023],[3.520236108,50.356371208],[3.520178398,50.356354393],[3.520115084,50.356338499]]]}

Screenshot from 2024-04-09 10-42-09

select st_asgeojson(geometrie) from voie_nommee where nom_minuscule = 'rue de la république' and code_insee = '82121';
{"type":"MultiLineString","coordinates":[[[1.355730933,44.016006349],[1.356202323,44.015837895],[1.356280511,44.015808463],[1.356343581,44.015784205],[1.356438523,44.015736121]],[[1.355730933,44.016006349],[1.355150516,44.016235275],[1.355048299,44.016276048]],[[1.355048299,44.016276048],[1.354760426,44.016395946],[1.354311626,44.016602542],[1.354181352,44.016664496]],[[1.354181352,44.016664496],[1.353752524,44.01687049]],[[1.353752524,44.01687049],[1.353540784,44.01698883]],[[1.352444273,44.017593458],[1.352497631,44.017560054],[1.352708103,44.017442597],[1.352752473,44.01741806]],[[1.352185869,44.017772306],[1.352444273,44.017593458]],[[1.351153479,44.018574131],[1.351496431,44.018232723]],[[1.351839579,44.018013744],[1.351970561,44.017927498],[1.352185869,44.017772306]],[[1.351554752,44.018200294],[1.351839579,44.018013744]],[[1.353540784,44.01698883],[1.353323925,44.017111594]],[[1.353323925,44.017111594],[1.353255475,44.017149272],[1.352752473,44.01741806]]]}

Screenshot from 2024-04-09 10-27-57

select st_asgeojson(geometrie) from route_numerotee_ou_nommee where numero = 'D110' and gestionnaire = 'Ardèche';
{"type":"MultiLineString","coordinates":[[[3.958835488,44.782955665],[3.958749998,44.782909585],[3.958675747,44.782855304],[3.958504166,44.78257947],[3.958149504,44.781723573],[3.957978432,44.781328885],[3.957638472,44.780518779],[3.957288487,44.779713262],[3.957127241,44.779375211],[3.956728206,44.778435059],[3.95619584,44.777235846],[3.955568987,44.775756528],[3.95534017,44.775234481],[3.9548069,44.773978548],[3.954699913,44.773707555],[3.95439695,44.773060993],[3.953949183,44.771999702],[3.953854678,44.771793429],[3.953807623,44.771701995],[3.9537449,44.771580984],[3.953648296,44.77139994],[3.95354181,44.771232485],[3.953436043,44.771107343],[3.953209072,44.770915714],[3.952963847,44.770765659],[3.952705636,44.770595007],[3.952522142,44.770507446],[3.952382167,44.770451926],[3.952020101,44.770343389],[3.951956654,44.770328628],[3.951810756,44.770296567],[3.951502502,44.770230785],[3.950974506,44.77010116],[3.949988772,44.76988542],[3.949113252,44.769684033],[3.948585813,44.769586806],[3.948576921,44.769584181],[3.948447456,44.769551975],[3.948364599,44.769510366],[3.947971979,44.769312941],[3.946789274,44.768582042],[3.94600366,44.768088142],[3.94587224,44.768014533],[3.945662061,44.767917285],[3.945340191,44.767792178],[3.945223188,44.767749057],[3.94489743,44.767693311],[3.944540851,44.767683745],[3.944180949,44.767702117],[3.94374682,44.767740929],[3.943025005,44.76788393],[3.942449054,44.767982467],[3.942234342,44.767991496],[3.942095258,44.767988176],[3.942061122,44.767987566],[3.941953661,44.767985778],[3.939903272,44.767738475],[3.939466328,44.767684555],[3.939138379,44.767648618],[3.938905435,44.767625381],[3.938713095,44.767611704],[3.938577832,44.767610149],[3.938504402,44.767602667],[3.938380513,44.767601015],[3.938257918,44.767601152],[3.938050579,44.767597505],[3.937886206,44.767593494],[3.937676354,44.767590767],[3.937451023,44.767569264],[3.937315641,44.767560505],[3.937204179,44.767546141],[3.937058522,44.767527564],[3.936964663,44.767507649],[3.936843001,44.767487969],[3.936695886,44.767457699],[3.936559995,44.767418331],[3.936448069,44.767376059],[3.93629053,44.767326969],[3.936229362,44.767296873],[3.936160703,44.767272242],[3.936075195,44.767222544],[3.935913312,44.767140176],[3.935739756,44.7670399],[3.935632676,44.76698498],[3.935528124,44.76693004],[3.935445221,44.766884821],[3.935308777,44.766812142],[3.935200435,44.766757233],[3.935074401,44.766702473],[3.934942184,44.766655869],[3.93484547,44.766616168],[3.934662437,44.766553785],[3.934479523,44.766498604],[3.934405481,44.76645421],[3.934301021,44.766404669],[3.93410127,44.766248788],[3.9340408,44.766184471],[3.93397645,44.766114784],[3.933911906,44.766033394],[3.933830232,44.765909831],[3.933685218,44.765701266],[3.933591814,44.765556193],[3.933478916,44.76537887],[3.933394328,44.765231922],[3.933314293,44.765130854],[3.933249438,44.765030559],[3.933179468,44.764926705],[3.933110359,44.764798534],[3.933053229,44.764630645],[3.932946443,44.764211971],[3.932797163,44.763669404],[3.932725698,44.763398994],[3.93265482,44.763240225],[3.93258759,44.763148953],[3.932486093,44.763048965],[3.932377552,44.76298145],[3.932283284,44.762936324],[3.932172753,44.762901239],[3.932076376,44.762881341],[3.931898028,44.762872037],[3.931785716,44.762881985],[3.931685,44.762905341],[3.931515396,44.762966191],[3.930980808,44.763194875],[3.930441384,44.763437102],[3.930108029,44.763607369],[3.929914889,44.763697226],[3.929496601,44.763851997],[3.929098379,44.763997595],[3.928687623,44.764149599],[3.928516749,44.764210455],[3.928402218,44.764239326],[3.928332837,44.76424711],[3.928225531,44.764254311],[3.928126908,44.764251536],[3.927998894,44.764229198],[3.927880796,44.764195072],[3.9277598,44.764138461],[3.927663944,44.764073537],[3.927594698,44.764012891],[3.927494993,44.763867866],[3.927295944,44.763522889],[3.92720088,44.763352614],[3.927124635,44.76325061],[3.927022003,44.76315783],[3.926924871,44.763092015],[3.926800146,44.763039036],[3.926698583,44.763011073],[3.926579536,44.762995862],[3.926450589,44.762993338],[3.926343285,44.763000538],[3.926216031,44.763024111],[3.926115416,44.763053763],[3.926031347,44.763090481],[3.925943783,44.763145234],[3.925861451,44.763210749],[3.925638266,44.763471919],[3.925443802,44.763712141],[3.925379249,44.763782909],[3.925309477,44.763843816],[3.925235723,44.763893052],[3.925146642,44.763932512],[3.925043556,44.763965785],[3.924926497,44.763994674],[3.924824335,44.764007231],[3.924484654,44.764024471],[3.924221995,44.764037466],[3.92405173,44.764058694],[3.923852637,44.764094568],[3.923686458,44.764133768],[3.92345904,44.764214896],[3.923288308,44.764284746],[3.922718061,44.764576713],[3.92250131,44.764691964],[3.922268603,44.764836159],[3.921964137,44.765074589],[3.92163948,44.765314987],[3.921551937,44.765371538],[3.921245022,44.765537956],[3.920760255,44.765803092],[3.920276688,44.766064614],[3.919819287,44.766303407],[3.919478389,44.766479107],[3.919217689,44.766612723],[3.919062314,44.766695045],[3.918956987,44.766746339],[3.918849104,44.766795853],[3.918731095,44.766844551],[3.91861169,44.766885157],[3.918497149,44.766914018],[3.918387545,44.766935635],[3.918284113,44.766948196],[3.918176786,44.766954488],[3.918078247,44.766957105],[3.917982132,44.766953399],[3.917850442,44.766938283],[3.917731287,44.76691676],[3.917608121,44.766881765],[3.917481075,44.7668414],[3.917276166,44.76675396],[3.917086466,44.766669094],[3.916973219,44.766622311],[3.916875357,44.766588907],[3.916768766,44.766562777],[3.916643382,44.766546707],[3.9164852,44.76653451],[3.916286712,44.766530749],[3.915872059,44.766524272],[3.915639422,44.766518991],[3.91550531,44.766510195],[3.915412826,44.766496553],[3.915358238,44.766481697],[3.915289471,44.766449852],[3.915242055,44.766409727],[3.915212302,44.766367655],[3.915192497,44.766315597],[3.915189018,44.766257102],[3.915210285,44.766165989],[3.915235621,44.76609195],[3.915301868,44.765968953]],[[4.141489639,44.740489537],[4.141306385,44.740486022],[4.141226922,44.740492243],[4.141171548,44.740502718],[4.140919446,44.740530526],[4.140672926,44.740584387],[4.140656616,44.740589957],[4.140243493,44.740713962],[4.139876473,44.740931133],[4.139569544,44.7411837],[4.137758447,44.742522292],[4.137301748,44.742991585],[4.137095173,44.7432098],[4.136945055,44.743408527],[4.136836383,44.743595124],[4.13677998,44.743742467],[4.136734618,44.74387349],[4.136690155,44.743986495],[4.136630188,44.744082552],[4.136532182,44.744171796],[4.135942983,44.744462364],[4.135394099,44.744684985],[4.135284368,44.744694213],[4.13520847,44.744689589],[4.13513607,44.744670522],[4.135056937,44.744630815],[4.134994044,44.744581938],[4.134957877,44.744542691],[4.134800764,44.744144525],[4.134533121,44.743527795],[4.134455282,44.743426847],[4.134357198,44.743324306],[4.134244373,44.743242625],[4.134131694,44.743168145],[4.133973543,44.743094131],[4.133836291,44.743054118],[4.133668725,44.743014414],[4.133317432,44.743010805],[4.132703072,44.743055805],[4.132490831,44.743056174],[4.132256683,44.743035157],[4.132103175,44.743003412],[4.131604687,44.742904959],[4.131521176,44.742898609],[4.13127481,44.742835396],[4.131200268,44.742835257],[4.131115856,44.742846923],[4.130314484,44.742953245],[4.130189363,44.74295092],[4.130027322,44.742934565],[4.129885076,44.742897299],[4.129728284,44.742827767],[4.129314679,44.742551962],[4.129127718,44.742426912],[4.128687755,44.742096449],[4.128578045,44.742043543],[4.128473658,44.742004088],[4.128396645,44.742006674],[4.128233056,44.742038953],[4.128145307,44.742073161],[4.127672689,44.742319278],[4.126377097,44.743170724],[4.125090053,44.744072489],[4.124973225,44.744169117],[4.124763276,44.744410753],[4.124617639,44.744646334],[4.124133385,44.74563988],[4.124070451,44.745778279],[4.123944438,44.746047875],[4.123799943,44.746341068],[4.123782249,44.746467302],[4.123791522,44.746741828],[4.123807319,44.746900137],[4.12381572,44.747004498],[4.123826163,44.747084527],[4.123829678,44.747134013],[4.123840049,44.747210441],[4.12384151,44.747220331],[4.123810195,44.747297182],[4.123760781,44.747353507],[4.123698662,44.74740636],[4.12363725,44.747431294],[4.123575748,44.747451726],[4.123462399,44.747469983],[4.123337538,44.747481153],[4.123223668,44.747473304],[4.123105865,44.747458291],[4.123013218,44.747437621],[4.122912867,44.747410725],[4.122789346,44.747362456],[4.122674166,44.74728889],[4.122576311,44.747197141],[4.122404682,44.746953973],[4.12207551,44.746413469],[4.121927496,44.746277208],[4.121817694,44.746219794],[4.121752841,44.746198842],[4.121658862,44.746174582],[4.121553891,44.746169342],[4.121438636,44.746155202],[4.121280485,44.746144197],[4.121153735,44.74612387],[4.121062104,44.746090583],[4.120979225,44.746052704],[4.120916809,44.746027224],[4.120861667,44.745986364],[4.120802341,44.745925738],[4.120759454,44.745865845],[4.120736868,44.745810249],[4.120711272,44.745730373],[4.120713627,44.745658318],[4.120725424,44.745552853],[4.120744227,44.745418504],[4.120729623,44.745319609],[4.120692515,44.745232646],[4.120621624,44.745162232],[4.120542178,44.745106311],[4.12044537,44.745066772],[4.120286793,44.745034161],[4.120151455,44.745026525],[4.120060758,44.745040048],[4.119908523,44.7450722],[4.119752947,44.745126896],[4.119518292,44.745207601],[4.119289971,44.745289143],[4.119008406,44.745425245],[4.117498082,44.746098675],[4.117195034,44.74623499],[4.116726583,44.7464405],[4.116443439,44.746561305],[4.116214099,44.746719383],[4.115976326,44.746898255],[4.115766552,44.747023722],[4.115634664,44.747062867],[4.11552359,44.747068487],[4.115403228,44.747051691],[4.115247085,44.747014546],[4.115091085,44.746984602],[4.114943128,44.746977988],[4.114781687,44.746992218],[4.114555592,44.74705932],[4.114150408,44.747206558],[4.11383329,44.747334901],[4.11358177,44.747458082],[4.113368163,44.747581781],[4.11308773,44.747776383],[4.112673766,44.74805516],[4.112246259,44.74835208],[4.111878245,44.748590776],[4.1116099,44.74875824],[4.11154494,44.748795808],[4.111208894,44.748990062],[4.110925191,44.749147774],[4.110637252,44.749283019],[4.109987584,44.749592061],[4.109697203,44.749731829],[4.109163856,44.749981175],[4.108656945,44.750225753],[4.10816366,44.750456686],[4.107689356,44.750689228],[4.10743567,44.750832225],[4.107173601,44.750998715],[4.106868784,44.751240364],[4.106765222,44.751307128],[4.106612691,44.751389686],[4.106461016,44.751451527],[4.106324094,44.751492512],[4.106118899,44.751531476],[4.105842101,44.751591864],[4.105587275,44.751677243],[4.105321803,44.751799644],[4.105038122,44.751960042],[4.104709102,44.752128095],[4.104593882,44.752180566],[4.104489786,44.75222032],[4.104346472,44.752257764],[4.104121095,44.752298727],[4.103702064,44.752387538],[4.103041371,44.752524674],[4.102330088,44.752659608],[4.101692023,44.752791108],[4.101269247,44.752882649],[4.100868964,44.752961359],[4.100565799,44.753031],[4.100314555,44.753106427],[4.100051028,44.753199983],[4.099754006,44.753325384],[4.099404783,44.753495422],[4.099016516,44.753672149],[4.098629704,44.753858764],[4.098222623,44.754042878],[4.097963476,44.754166999],[4.097650055,44.754294358],[4.097454249,44.754362026],[4.097194168,44.754438434],[4.097028332,44.754487796],[4.096788394,44.754560402],[4.096583672,44.754624555],[4.096503306,44.754650561],[4.096450595,44.754669091],[4.096311604,44.754669566],[4.096247014,44.754662101],[4.096186003,44.754643796],[4.096177106,44.754641183],[4.096146346,44.754618978],[4.095845259,44.754406762],[4.095835012,44.75439966],[4.095782406,44.754358762],[4.095678705,44.754289557],[4.095588128,44.754245433],[4.095506834,44.754223727],[4.095403114,44.75421845],[4.09531852,44.754221987],[4.095222783,44.75423734],[4.095187531,44.754243991],[4.094997672,44.754292688],[4.094866998,44.754330895],[4.094688474,44.754377678],[4.094285186,44.754497812],[4.093957455,44.754604593],[4.093684664,44.754677516],[4.093564324,44.754727325],[4.093544267,44.754735627],[4.093498519,44.7547874],[4.093488971,44.754816307],[4.093483057,44.754837074],[4.093477177,44.754859642],[4.093466237,44.755011916],[4.093445651,44.755058039],[4.093430753,44.755071692],[4.093399728,44.755100811],[4.093296248,44.755172963],[4.093236479,44.755218572],[4.09321407,44.755235901],[4.093112836,44.755293624],[4.093027729,44.755335881],[4.092997687,44.755350584],[4.092815153,44.755451427],[4.09264973,44.755522389],[4.092496433,44.755567119],[4.092410748,44.755579669],[4.092295725,44.755578102],[4.09207305,44.755564089],[4.092028726,44.755559124],[4.091921021,44.755543978],[4.091714474,44.755514499],[4.091452319,44.755484668],[4.091296762,44.755478096],[4.091212516,44.755499635],[4.0911303,44.755560771],[4.091091798,44.755595365],[4.091040574,44.755625582],[4.090970539,44.755663187],[4.090901383,44.755680976],[4.090842072,44.755685161],[4.090696727,44.755683891],[4.090661229,44.755677937],[4.090210948,44.755656257],[4.08946129,44.755640219],[4.089338599,44.755634223],[4.089119819,44.755625568],[4.088866806,44.755610947],[4.08864157,44.755595153],[4.088344232,44.755575563],[4.088111364,44.755557141],[4.087937963,44.755542637],[4.087784707,44.755524333],[4.087681918,44.755501932],[4.087601784,44.755474806],[4.087478189,44.755421996],[4.087336437,44.755345053],[4.087217722,44.75528319],[4.087011531,44.75514115],[4.086916717,44.755073651],[4.086873136,44.755041664],[4.086862889,44.755034562],[4.086735969,44.754940365],[4.086555031,44.754797177],[4.086394655,44.754671794],[4.086280939,44.754541452],[4.086182575,44.754420863],[4.086100375,44.754286611],[4.086000952,44.754111109],[4.085925,44.753973193],[4.085871464,44.753883679],[4.085839145,44.75378045],[4.085806809,44.753676322],[4.085748232,44.753522029],[4.085683483,44.753440728],[4.085611779,44.753391909],[4.085512699,44.753364968],[4.085434248,44.753359433],[4.08532958,44.753370363],[4.085176717,44.753437589],[4.084805837,44.753666317],[4.084383884,44.753933361],[4.084190004,44.754036102],[4.084027222,44.754113327],[4.083658319,44.754248392],[4.083413433,44.75432732],[4.083205045,44.754398687],[4.082959707,44.754454208],[4.082663331,44.754484116],[4.082287066,44.754499497],[4.081666707,44.754503753],[4.081583306,44.754503667],[4.081397362,44.754493777],[4.081204583,44.754456941],[4.081016443,44.754398451],[4.080831608,44.754314717],[4.080711795,44.754260961],[4.080598923,44.754173824],[4.080452719,44.754061801],[4.080287167,44.753929257],[4.080144651,44.753811795],[4.079975553,44.753691891],[4.079729597,44.75358354],[4.079497591,44.753477753],[4.079304281,44.753413008],[4.079107544,44.753367203],[4.078955457,44.753343473],[4.078807333,44.753328709],[4.078789611,44.75332708],[4.078626533,44.753323266],[4.078488844,44.753325506],[4.07832625,44.753346897],[4.078151315,44.753383714],[4.077982593,44.753415069],[4.077827526,44.753433685],[4.077665953,44.753442459],[4.077398309,44.753454966],[4.077035045,44.753489111],[4.076803102,44.753518377],[4.076668129,44.753530493],[4.076567111,44.753534175],[4.076421617,44.753524784],[4.076257867,44.753485857],[4.076046495,44.753401473],[4.075716753,44.753272317],[4.075484876,44.753172824],[4.075360764,44.753092094],[4.075250051,44.752985121],[4.075145689,44.752879888],[4.075008144,44.752691241],[4.074695801,44.752281893],[4.074628464,44.752130381],[4.074597809,44.752046942],[4.074591053,44.751957869],[4.07459816,44.751866861],[4.074601202,44.751761486],[4.074602043,44.75167324],[4.07459778,44.751582342],[4.074582405,44.751505058],[4.074556373,44.751399065],[4.074493043,44.75119259],[4.07444642,44.751066988],[4.074385566,44.750990145],[4.074309947,44.750934154],[4.074214666,44.750907165],[4.074126131,44.750902621],[4.074021551,44.750918041],[4.073823065,44.75097849],[4.072708143,44.751351245],[4.072416191,44.751480125],[4.07209066,44.751637241],[4.072049382,44.75165925],[4.071786775,44.751803151],[4.071569356,44.751931308],[4.071437191,44.752024426],[4.071360921,44.75213321],[4.071333184,44.752202808],[4.071303817,44.75238587],[4.071269391,44.752502353],[4.071205685,44.752607414],[4.071131084,44.752671162],[4.071022166,44.752724437],[4.070896294,44.752749964],[4.070706041,44.752778814],[4.070450283,44.752818201],[4.070070274,44.752902006],[4.069788874,44.752988459],[4.069523896,44.753074753],[4.069257347,44.753144855],[4.068991173,44.75323476],[4.068865931,44.753293593],[4.068807083,44.753322073],[4.068743541,44.753369506],[4.06867515,44.75342779],[4.068635817,44.753485794],[4.068594538,44.75357443],[4.068543733,44.753693771],[4.068461463,44.753819718],[4.068361677,44.753954838],[4.068223903,44.754085822],[4.068089782,44.754209568],[4.067923528,44.75430481],[4.067772298,44.754392705],[4.067629724,44.754470612],[4.067453192,44.754623577],[4.067226635,44.754804036],[4.067011106,44.754966381],[4.066792485,44.755099042],[4.066564524,44.75527231],[4.066352286,44.755475138],[4.066150273,44.755684171],[4.065788501,44.755998285],[4.06567042,44.756102065],[4.065554234,44.756172512],[4.065451451,44.756216719],[4.065309382,44.756255001],[4.065205147,44.756289317],[4.065118635,44.756325264],[4.065031251,44.756381927],[4.064999561,44.756443458],[4.064996912,44.75650381],[4.064999914,44.75659562],[4.065007543,44.756664877],[4.065005508,44.756757636],[4.064947368,44.756890552],[4.064814082,44.757125934],[4.064651035,44.757391314],[4.064489505,44.757670185],[4.064338527,44.757905736],[4.064185296,44.758089086],[4.064086449,44.758207986],[4.063960642,44.758304635],[4.063836218,44.758407573],[4.06381134,44.758428521],[4.063697636,44.75856377],[4.063626958,44.758702208],[4.063537974,44.758875036],[4.063477028,44.758993572],[4.063431602,44.759130867],[4.063423183,44.759153457],[4.063384555,44.759249269],[4.063285202,44.759475319],[4.063171217,44.759662793],[4.06309678,44.759803067],[4.06306657,44.759876289],[4.063017816,44.759971297],[4.062959791,44.760043885],[4.062870774,44.760148283],[4.062780016,44.760227487],[4.062639211,44.760333282],[4.062497668,44.760466997],[4.062397414,44.760578706],[4.062318282,44.760671304],[4.062236912,44.76077923],[4.062188631,44.760899444],[4.062170505,44.761010366],[4.062149801,44.761118611],[4.062122864,44.761231418],[4.062097089,44.761338811],[4.062059958,44.761447213],[4.062005155,44.761556685],[4.061964987,44.761638105],[4.061891213,44.761746859],[4.061769746,44.761873177],[4.061612196,44.762029553],[4.061402034,44.762210743],[4.061187248,44.762347858],[4.060970772,44.762462479],[4.060725047,44.762567476],[4.060437504,44.762666569],[4.060133635,44.76277122],[4.059831182,44.76288396],[4.059519746,44.762989582],[4.059314799,44.763045565],[4.059144994,44.763088606],[4.058944006,44.763153553],[4.058782122,44.763214526],[4.058692143,44.763268508],[4.05859425,44.763372088],[4.05848093,44.763528937],[4.058403939,44.763735861],[4.058322356,44.764034669],[4.058217469,44.764303987],[4.058148627,44.764473917],[4.058085645,44.764619481],[4.05808124,44.764721267],[4.058086714,44.764877882],[4.058102404,44.765107332],[4.05814866,44.765349095],[4.058161563,44.765497536],[4.058157599,44.765622728],[4.058126308,44.765773391],[4.058090804,44.765901586],[4.058046318,44.766022662],[4.057981613,44.766143932],[4.057905145,44.766244605],[4.057819009,44.766368781],[4.057706047,44.766477906],[4.057546616,44.76660278],[4.057338156,44.766741628],[4.057037954,44.766908363],[4.056837458,44.767000314],[4.056644475,44.767088591],[4.056432452,44.767172548],[4.056223763,44.767232161],[4.056041188,44.767269016],[4.055834874,44.767320503],[4.055616091,44.767381113],[4.055426592,44.767453148],[4.055204862,44.767558804],[4.054839157,44.767737861],[4.054675402,44.76783486],[4.054669134,44.767837621],[4.054516533,44.767922809],[4.054326677,44.767975937],[4.054219735,44.768002166],[4.05411136,44.768019403],[4.053994224,44.768041226],[4.053841805,44.768068787],[4.053765141,44.768092025],[4.05366477,44.768131696],[4.053599766,44.768170131],[4.053492909,44.768268388],[4.053246202,44.768593073],[4.05316578,44.768685676],[4.053104971,44.76874568],[4.053002644,44.768815982],[4.052792883,44.768953933],[4.052486826,44.769146822],[4.052217971,44.769301541],[4.051975485,44.769447004],[4.051705936,44.769632341],[4.051307042,44.769930553],[4.051218309,44.769984517],[4.051141961,44.770024859],[4.051058064,44.770067072],[4.050975279,44.770101171],[4.050884861,44.770132642],[4.050727498,44.770166548],[4.050626802,44.770189112],[4.050533654,44.770209803],[4.050409165,44.770244297],[4.050291314,44.770295836],[4.050140131,44.770390009],[4.050014341,44.770490243],[4.049911264,44.770588462],[4.04983085,44.770681963],[4.049784155,44.770753536],[4.049687409,44.770920124],[4.049492698,44.771323542],[4.049231857,44.771841034],[4.049156172,44.771984912],[4.0491194,44.772046487],[4.0490664,44.77211902],[4.049005851,44.772193425],[4.04891524,44.772282521],[4.048781977,44.772389127],[4.048641048,44.772491304],[4.048572412,44.772538774],[4.048495012,44.772590828],[4.048351219,44.772675024],[4.048222288,44.772742872],[4.047990363,44.772845909],[4.047565218,44.773026404],[4.047510079,44.773052136],[4.047452631,44.773089595],[4.04738396,44.773135263],[4.047332965,44.773179864],[4.047271031,44.773247978],[4.047189798,44.773365797],[4.047119688,44.773470004],[4.047092521,44.773504475],[4.047044371,44.773566157],[4.046957797,44.773668718],[4.046876972,44.773740613],[4.046771306,44.773836151],[4.046448445,44.774079604],[4.045993658,44.774434148],[4.045658236,44.774682219],[4.045592155,44.774731463],[4.045402878,44.774885414],[4.045155018,44.775084036],[4.045115243,44.775120427],[4.044940066,44.775285049],[4.044749789,44.775453415],[4.044614853,44.775606852],[4.04451477,44.775731149],[4.04443228,44.775849877],[4.044324068,44.776012967],[4.044221496,44.776207517],[4.044106273,44.776469716],[4.044077177,44.776536619],[4.044049193,44.776595408],[4.04402229,44.776644282],[4.043971674,44.776709587],[4.043897126,44.776779619],[4.043743622,44.77688641],[4.043495891,44.777024701],[4.043359445,44.777097117],[4.043222999,44.777169532],[4.043084225,44.777252773],[4.042954514,44.777347634],[4.04280869,44.777459754],[4.042668755,44.777616838],[4.042497889,44.777810228],[4.042311408,44.778047884],[4.042101261,44.77830467],[4.041907243,44.778545097],[4.041806849,44.778653187],[4.041687261,44.778748852],[4.041547267,44.778834804],[4.041363067,44.778922972],[4.041075473,44.779025617],[4.040874608,44.779101335],[4.040775522,44.779143683],[4.040672861,44.77919777],[4.040570349,44.779259959],[4.040461851,44.779340212],[4.040355232,44.779453761],[4.040194481,44.779647953],[4.040105474,44.779756835],[4.040012525,44.77992608],[4.039990906,44.77998751],[4.039964331,44.780054388],[4.03995279,44.780113922],[4.039950146,44.780176074],[4.039952459,44.780232777],[4.039968676,44.780289349],[4.040004052,44.780356547],[4.040041656,44.780407516],[4.040094512,44.780462845],[4.040215889,44.780531936],[4.040395893,44.780626589],[4.040454586,44.780655751],[4.040518535,44.780695668],[4.040546842,44.780722415],[4.040580239,44.780750914],[4.040598451,44.780778655],[4.040615416,44.780807308],[4.040626261,44.780846823],[4.040629588,44.780890011],[4.040631585,44.780929609],[4.04062239,44.780979217],[4.040588497,44.781060571],[4.04046621,44.781215685],[4.040233441,44.781480784],[4.040008003,44.781732307],[4.039645421,44.782156191],[4.039423887,44.782413979],[4.039218617,44.782662611],[4.038976322,44.78296021],[4.038887474,44.783078094],[4.03870723,44.783312984],[4.038542703,44.78350901],[4.038295944,44.783770634],[4.038106183,44.783969597],[4.0380245,44.784064903],[4.037976182,44.784118479],[4.037936978,44.784186375],[4.037905459,44.784259602],[4.037875435,44.78434542],[4.037848123,44.784441117],[4.037821792,44.784521499],[4.03780135,44.784578415],[4.03776311,44.784630095],[4.037709735,44.784683718],[4.037609738,44.78474588],[4.037443943,44.784805057],[4.037359648,44.784827455],[4.037243685,44.784846548],[4.037087387,44.784872321],[4.03696517,44.784895073],[4.036870795,44.784919366],[4.036766391,44.784948255],[4.036440785,44.785048541],[4.03616042,44.785133998],[4.036051174,44.785174636],[4.035977273,44.785212243],[4.035675562,44.785374431],[4.03541871,44.785501084],[4.035230621,44.785585676],[4.035062259,44.785643072],[4.03490401,44.785700374],[4.034719081,44.785750721],[4.034581874,44.785783515],[4.034443253,44.785808219],[4.034328435,44.785820995],[4.034232462,44.785827293],[4.034117462,44.785830166],[4.034001082,44.78582675],[4.033875935,44.785827917],[4.033762282,44.785835279],[4.033643622,44.78584539],[4.033528952,44.785866267],[4.03342827,44.785891516],[4.033043009,44.785979743],[4.032860391,44.786018361],[4.032731799,44.786038467],[4.032632133,44.7860502],[4.032177665,44.786087746],[4.031831778,44.786117077],[4.031565513,44.786144766],[4.031425494,44.786162276],[4.031309575,44.786184063],[4.031217757,44.786210128],[4.031138564,44.786235175],[4.031058222,44.786266535],[4.030981705,44.786299661],[4.03090537,44.786342689],[4.030687377,44.786451863],[4.030331815,44.786643349],[4.03018909,44.786720308],[4.029680262,44.78703477],[4.029449755,44.78715126],[4.029289215,44.78722208],[4.029073398,44.787312322],[4.028855085,44.787404387],[4.028557658,44.787525999],[4.028300303,44.787626528],[4.028159492,44.787670153],[4.027609086,44.787855333],[4.027320256,44.787963356],[4.027110721,44.788051735],[4.026878776,44.788159229],[4.026309153,44.788400405],[4.025852611,44.788602716],[4.025669668,44.788693548],[4.025588072,44.788725816],[4.025244364,44.788875759],[4.024680162,44.789137586],[4.024029348,44.789434425],[4.023293381,44.789777065],[4.023091631,44.78987707],[4.022757005,44.790040427],[4.022481271,44.790174427],[4.022307036,44.790257969],[4.022135231,44.790336086],[4.021959518,44.790407936],[4.021734599,44.790485642],[4.021612755,44.790529983],[4.021431723,44.790587475],[4.021223929,44.790633509],[4.020551834,44.790735138],[4.019848279,44.790845156],[4.019775117,44.790854833],[4.019706996,44.790863563],[4.019573413,44.790888202],[4.019439961,44.790920042],[4.019334223,44.790946225],[4.019216104,44.790986928],[4.019091893,44.791040293],[4.018951589,44.791112713],[4.018816749,44.791207593],[4.018632399,44.791361452],[4.018372594,44.791607845],[4.018192523,44.791788676],[4.017886051,44.792041799],[4.017575815,44.792296756],[4.017368458,44.792437319],[4.017263482,44.792505811],[4.017133237,44.792575436],[4.016995422,44.79264603],[4.016794899,44.792745111],[4.016516527,44.792874619],[4.016410025,44.792928718],[4.016336279,44.792976214],[4.016271449,44.793027231],[4.016197122,44.793112549],[4.016139101,44.793190514],[4.016088328,44.793319735],[4.016077974,44.793376555],[4.016077686,44.793430581],[4.016091272,44.793482679],[4.016123937,44.793540905],[4.01616811,44.793606229],[4.01621987,44.793671483],[4.016256181,44.793721572],[4.016288667,44.793769896],[4.016311038,44.793818312],[4.016322048,44.793867733],[4.016321743,44.793920858],[4.016311504,44.79398398],[4.016237425,44.794153032],[4.01606843,44.794387782],[4.015823499,44.794688956],[4.015536973,44.794997714],[4.015331922,44.795196777],[4.015176288,44.79533146],[4.015041773,44.795445241],[4.014783259,44.795624984],[4.014632013,44.79572271],[4.014439272,44.79583342],[4.014340364,44.795888349],[4.014233692,44.795933444],[4.01413689,44.795964942],[4.014075116,44.795975412],[4.013897153,44.795994146],[4.013689883,44.796000543],[4.013424437,44.796006571],[4.012990591,44.796000631],[4.012890741,44.796003343],[4.012802383,44.796012254],[4.012726717,44.79602375],[4.01262596,44.796046279],[4.012515444,44.796088706],[4.0123864,44.796155613],[4.012245653,44.796274849],[4.012096752,44.796432877],[4.012052224,44.796488207],[4.012017697,44.796537143],[4.011993285,44.796585987],[4.011980495,44.796648231],[4.011973979,44.796707716],[4.011979117,44.796782402],[4.011995764,44.796864186],[4.012064055,44.797004924],[4.01220422,44.797204432],[4.012238082,44.797259047],[4.012261668,44.797304752],[4.012263678,44.797346151],[4.012256934,44.797393033],[4.012228891,44.797450914],[4.012169466,44.797521687],[4.012130967,44.797560756],[4.012062366,44.797613604],[4.011975741,44.79764861],[4.011910269,44.797664514],[4.011751395,44.797690274],[4.011636709,44.79771203],[4.011525914,44.797739152],[4.011392862,44.797794389],[4.011288971,44.797853862],[4.010966371,44.79805759],[4.010860096,44.798125188],[4.010804884,44.798149102],[4.010752152,44.798170291],[4.010687928,44.798185283],[4.010632408,44.798192092],[4.010574311,44.798196223],[4.010412307,44.798188695],[4.010060355,44.79816669],[4.009723931,44.798164352],[4.009513897,44.79815816],[4.009330222,44.798140924],[4.009262999,44.798129831],[4.009170602,44.798125269],[4.009103558,44.798124078],[4.009047957,44.798126385],[4.00899007,44.798142219],[4.008822973,44.798203165],[4.008381966,44.798362943],[4.008314109,44.798386971],[4.008223428,44.798407604],[4.008098576,44.798426747],[4.007960967,44.798439702],[4.00778888,44.798434063],[4.007612904,44.798423057],[4.006729978,44.798339236],[4.006264963,44.798288532],[4.00607764,44.798279427],[4.005943518,44.798275242],[4.005806964,44.79827648],[4.005689344,44.798275746],[4.005603204,44.798267523],[4.005510662,44.798254857],[4.005426858,44.798235808],[4.005342845,44.798205056],[4.005260096,44.798174292],[4.005054872,44.798083412],[4.004953062,44.798047419],[4.004847442,44.798010559],[4.004748305,44.797982645],[4.004651874,44.797964611],[4.003932702,44.797844168],[4.003780574,44.797823036],[4.003699493,44.797814766],[4.003607162,44.7978138],[4.003498457,44.797816585],[4.003401196,44.797822867],[4.003314179,44.79783626],[4.003239918,44.79785584],[4.003174475,44.79787354],[4.003094085,44.79790398],[4.003008717,44.797938967],[4.002892109,44.797994945],[4.002416571,44.798275665],[4.002179418,44.798450683],[4.002119947,44.79851965],[4.002099367,44.798571159],[4.002085173,44.798626211],[4.002080982,44.79867487],[4.00208569,44.79872615],[4.002100593,44.798781839],[4.00212566,44.798840138],[4.002154456,44.798894802],[4.002392539,44.799339244],[4.002447318,44.79950352],[4.002452283,44.799569204],[4.002452415,44.799647537],[4.002438623,44.799725095],[4.00241742,44.799812625],[4.002392264,44.799891186],[4.002314486,44.800068366],[4.002272109,44.800174095],[4.002147361,44.800483156],[4.002082304,44.800593592],[4.002029329,44.800672405],[4.001972416,44.800743149],[4.001916575,44.80080308],[4.001849241,44.800856811],[4.001760716,44.800927841],[4.001677025,44.800986222],[4.001409158,44.801141708],[4.000847028,44.80146192],[4.000243532,44.80180321],[3.999642445,44.802138173],[3.999474718,44.802236027],[3.999441313,44.802277746],[3.999332759,44.802431791]],[[4.141489639,44.740489537],[4.141580597,44.7404895],[4.141938461,44.740568648],[4.14204238,44.740584684],[4.142267644,44.740603971],[4.142505027,44.740597922],[4.142627215,44.740580454],[4.142703933,44.740563456]],[[4.142905182,44.740519962],[4.142920063,44.74056843],[4.142727728,44.740615433],[4.142585514,44.740642111],[4.142485933,44.740653043],[4.142378663,44.740658651],[4.14226367,44.740657135],[4.142144722,44.740647557],[4.142026837,44.740628063],[4.141910087,44.740602255],[4.141589841,44.740509213],[4.141489639,44.740489537]]]}

Screenshot from 2024-04-08 16-07-16

select st_asgeojson(geometrie) from voie_nommee where nom_minuscule = 'boulevard de l''hôpital' and code_insee = '75113';
 {"type":"MultiLineString","coordinates":[[[2.356484293,48.832800325],[2.356109059,48.832297356],[2.356056855,48.832222427]],[[2.356484293,48.832800325],[2.356650466,48.833023363],[2.35676572,48.833177775]],[[2.356824681,48.833257237],[2.35676572,48.833177775]],[[2.358272032,48.835203151],[2.35781505,48.834587329]],[[2.358272032,48.835203151],[2.358103142,48.835199546],[2.357934408,48.835183351],[2.357895045,48.835171448],[2.357813154,48.835072977],[2.357592368,48.834748019],[2.357516071,48.834637887]],[[2.357786886,48.834551203],[2.356824681,48.833257237]],[[2.35781505,48.834587329],[2.357786886,48.834551203]],[[2.35877202,48.835867767],[2.358651339,48.83571063]],[[2.359290608,48.836572052],[2.35877202,48.835867767]],[[2.360996746,48.838872762],[2.360846652,48.838668704]],[[2.360006248,48.837540004],[2.359515764,48.836875445],[2.359290608,48.836572052]],[[2.360846652,48.838668704],[2.360006248,48.837540004]],[[2.358541412,48.835565242],[2.358272032,48.835203151]],[[2.358651339,48.83571063],[2.358541412,48.835565242]],[[2.362104546,48.840421983],[2.362207867,48.840552042],[2.362335317,48.840714607],[2.362516263,48.840959299]],[[2.362516263,48.840959299],[2.362578,48.841036074],[2.362660031,48.841124648],[2.362866515,48.841398255],[2.363181228,48.841846914]],[[2.363696219,48.842297537],[2.363527271,48.842073596],[2.363374356,48.841875822],[2.363182569,48.841625678],[2.362946658,48.841306947],[2.362655836,48.840910578]],[[2.363181228,48.841846914],[2.363364952,48.842088022],[2.363506935,48.842288435],[2.363564576,48.842366087]],[[2.363852864,48.842748051],[2.363962699,48.842903325]],[[2.36415955,48.843185871],[2.364065745,48.843056764],[2.363962699,48.842903325]],[[2.364103672,48.842851911],[2.364314115,48.843137228],[2.364442765,48.843314186],[2.364768279,48.843661269]],[[2.364575574,48.843708811],[2.364521819,48.843647369],[2.364422541,48.843520032],[2.36415955,48.843185871]],[[2.363564576,48.842366087],[2.363623558,48.842445545]],[[2.363696219,48.842297537],[2.363848971,48.8425088],[2.363997769,48.842709249]],[[2.363623558,48.842445545],[2.363852864,48.842748051]],[[2.363997769,48.842709249],[2.364103672,48.842851911]],[[2.362084521,48.840165558],[2.362253632,48.840375112]],[[2.361967748,48.840244079],[2.362036152,48.840332582]],[[2.362036152,48.840332582],[2.362104546,48.840421983]],[[2.362253632,48.840375112],[2.362360942,48.840513287],[2.362655836,48.840910578]],[[2.361696024,48.839846909],[2.361745287,48.839940706],[2.361773281,48.83999122]],[[2.360996746,48.838872762],[2.36134685,48.839321616],[2.361589334,48.839658373],[2.361696024,48.839846909]],[[2.361696024,48.839846909],[2.361827615,48.839893479],[2.361862796,48.839913453],[2.361914027,48.839957795],[2.361985211,48.840041815],[2.362084521,48.840165558]],[[2.361967748,48.840244079],[2.361851024,48.840095961],[2.361773281,48.83999122]]]}

Screenshot from 2024-04-09 11-10-27

select st_asgeojson(geometrie), code_insee from voie_nommee where nom_minuscule = 'rue vauvenargues' and code_insee = '75118';
 {"type":"MultiLineString","coordinates":[[[2.334953772,48.891680688],[2.333699619,48.893020004]],[[2.332738316,48.89417208],[2.332757371,48.894068764],[2.332764513,48.894043623],[2.33277021,48.894024769],[2.333699619,48.893020004]],[[2.332376449,48.894418276],[2.332585096,48.894208098],[2.332622345,48.894175031]],[[2.331090887,48.895750192],[2.332376449,48.894418276]],[[2.330906963,48.895946116],[2.331003727,48.895845933]],[[2.330879327,48.895973841],[2.330906963,48.895946116]],[[2.330181018,48.896712776],[2.330879327,48.895973841]],[[2.329383398,48.897535687],[2.32948581,48.897421147],[2.330181018,48.896712776]],[[2.331031386,48.89581641],[2.331090887,48.895750192]],[[2.331003727,48.895845933],[2.331031386,48.89581641]]]}

Screenshot from 2024-04-09 10-37-30

Questions ouvertes

Proposition

Fermer toutes les chaussées suffisamment proches des points de début / fin définis par l'utilisateur

Pseudo-code :

  1. Calculer la projection des points de début et de fin sur chaque LINESTRING de la MULTILINESTRING à l'intérieur d'un périmètre de largeur à définir, par exemple 10 mètres (utiliser ST_Buffer)
  2. Calculer tous les itinéraires entre chaque paire de point projeté de début / fin ainsi calculées (utiliser pgrouting)
    • Certains itinéraires seront impossibles (ex : Avenue des Dentellières, aucun itinéraire ne permettrait de relier un point côté pair à un point côté impair)
    • D'autres seront trouvés et se chevaucheront potentiellement (s'ils ont des tronçons en commun)
  3. Calculer l'union entre tous ces itinéraires (ST_Union ou autre fonction)

Intérêt de la proposition

Cette approche couvre-t-elle efficacement les cas ci-dessus ?

:x: = Erreur / Aucun résultat, :ok: = Obtention d'un résultat (mais est-ce celui qu'on veut ?)

Cas Comportement actuel Nouveau comportement
Rue du Faubourg de Paris à Valenciennes, entre le 80 (à l'ouest) et le 26 (au nord) :x: Erreur car rue composée de plusieurs lignes :ok:, :warning: Le résultat incluera une partie du rond-point
Avenue des Dentellières à Valenciennes, entre le 2 et le 16 (côté pair) :ok: car les deux numéros appartiennent à la même ligne, mais :warning: seule la chaussée côté pair sera fermée (introduction d'une notion de direction alors que DiaLog n'en a pas encore) :ok: et résultat différent : les deux chaussées seront fermées, depuis en face du 2 jusqu'à en face du 16
Avenue des Dentellières à Valenciennes, entre le 2 (côté pair, au nord-est) et le 31 (côté impair, au sud-ouest) :x: Aucun résultat car les numéros ne sont pas sur la même ligne :ok: La portion de chaque chaussée depuis en face du numéro 2 jusqu'à en face du numéro 31
Rue de la République à Montauban, entre le 44 et le 47 (entoure l'intersection avec la Rue Malcousinat) :x: Erreur car rue en plusieurs morceaux (trou au niveau de la Place Léon Bourjade) :ok: Linéaire entre ces deux points
D110 en Ardèche, du PR 1 au PR 2 (sur le même morceau à l'est) :ok: Les points appartiennent à la même ligne :ok: Même résultat
D110 en Ardèche, du PR 15 (morceau à l'est) au PR 21 (morceau à l'ouest) :x: Erreur car les points ne sont pas sur la même ligne :x: Aucun résultat car aucun itinéraire ne peut joindre ces deux points moyennant un rayon de 10 mètres
Boulevard de l'Hôpital à Paris, entre le 40 et 47 (cas Eudonet) :x: Erreur car les numéros n'appartiennent pas à la même ligne (le 40 est rattaché à la voie voitures, le 47 à la voie de bus) :ok: La portion de chaque voie (voitures et :warning: bus) sera fermée depuis en face du 40 à en face du 47
Rue Vauvenargues à Paris, entre le 26 et le 44 (de part et d'autre de la Rue Championnet) :x: Erreur car les numéros ne sont pas sur la même ligne :x: Aucun résultat car aucun itinéraire ne permet de relier ces deux points moyennant un rayon de 10 mètres
jjacquelinet commented 3 months ago

Cela a-t-il un sens métier de définir une localisation démarrant sur un morceau et finissant sur l'autre ?

Moi je ne m'embêterai pas côté code et je permettrai cela. Au pire, c'est facile de faire la distinction entre un cas type rue Vauvenargues, Paris 18ème arrondissement, et un cas type D110, Ardèche (ou autoroute A51, qui est en 3 morceaux, un côté Grenoble, un côté Gap - Aix, un côté Aix - Marseille). On code une distance max en dur.

florimondmanca commented 3 months ago

@jjacquelinet J'ai mis un tableau récapitulatif du comportement avant/après

Je crois qu'il manque dans ce que j'ai écrit le mécanisme qui permettrait de couvrir le cas de la rue vauvenargues, c'est-à-dire un linéaire avec un trou de taille acceptable, qu'on voudrait "combler" le temps de relier les points demandés

jjacquelinet commented 3 months ago

Beau travail !!

Pour le trou de la rue Vauvenargues, pour moi il faut combler avec le réseau existant (dans ce cas, un petit bout de la rue Championnet), dont on retire la géométrie à la toute fin.

florimondmanca commented 3 months ago

Pour le trou de la rue Vauvenargues, pour moi il faut combler avec le réseau existant (dans ce cas, un petit bout de la rue Championnet), dont on retire la géométrie à la toute fin.

Comment ça se calcule ? Je dirais comme ça...

jjacquelinet commented 3 months ago

Peut-être qu'utiliser directement ST_DWithin sera plus efficace ? (à ne pas confondre avec ST_DFullyWithin ;))

Mais je vais vérifier si on a besoin de faire ça. En effet, c'est inutile si on arrive à modifier le coût (basé sur la longueur) des tronçons de rue ou de route à chaque requête (pondération coût*0.20 pour favoriser la rue Vauvenargues par exemple).

jjacquelinet commented 3 months ago

Pour retirer la géométrie, en fait : un calcul d'itinéraire nous retourne une liste d'id des tronçons de rue ou de route : du coup on retire de la liste les "mauvais" id, et enfin on récupère les géométries avec une jointure, et une aggrégation nous donne une MultiLine via ST_Collect.

jjacquelinet commented 3 months ago

Il peut aussi y avoir des rues à 3 ou 4 chaussées séparées :

• exemple, cas du boulevard Montparnasse à Paris :

Capture d’écran 2024-04-09 à 12 12 03

• exemple : boulevard de Port Royal à Paris :

Capture d’écran 2024-04-09 à 12 14 54

Il faudrait pour gérer ces cas là (notamment le cas du boulevard de Port Royal) calculer tous les itinéraires possibles ayant un coût acceptable (on arrête l'algorithme quand on dépasse un certain coût).

Dans le détail : • on commence par calculer l'itinéraire le plus court entre un point départ et un point d'arrivée, le but étant d'obtenir le coût de référence (et éventuellement une géométrie de référence). • Ensuite ça n'est pas vraiment du calcul d'itinéraire mais plutôt la création de tous les chemins accessibles à partir d'un nœud, on arrête de parcourir le chemin quand le coût du chemin est trop important par rapport au coût de référence. Filtrage à prévoir autour de la géométrie de référence pour ne pas saturer la mémoire vive ? Cas des longues autoroutes type autoroute A10 : vérifier si c'est acceptable. • Enfin, on retire les tronçons de rue ou de route non concernés par l'arrêté

florimondmanca commented 3 months ago

Je me dis qu'à force de vouloir absolument obtenir une géométrie pour ces cas "complexes" on risque de sur-interpréter là où l'utilisateur devrait rentrer beaucoup plus de détails...

Le cas des rues / routes à plusieurs voies est dans ce ticket #424

J'aurais le même questionnement, à quoi ressemblent les arrêtés pris sur ces arrêtés, arrive-t-il qu'ils bloquent TOUT le boulevard (donc la solution proposée pourrait fonctionner, seulement une voie (donc #424), autre ?

À un moment est-ce qu'un dessin sur une carte ne serait pas plus simple pour ces cas-là... ?

Est-ce que notre énergie est mieux focalisée sur ces cas complexes, ou bien sur le shipping de données existantes aux GPS ?

Pas facile de donner une direction et des priorités mais il faut faire attention au scope creep car la modélisation de la voirie est très complexe avec plein de cas, il faut aussi qu'on dise stop pour l'instant on va traiter ça et le reste tant pis, erreur... à mon humble avis...

jjacquelinet commented 3 months ago

En fait, avec cette technique du calcul d'itinéraires, il faut forcement calculer "tous les chemins accessibles à partir d'un nœud". En effet, une route est rarement rectiligne, il y a forcément une chaussée plus courte que l'autre : exemple : "le Contour de la Motte", Rennes, Bretagne :

Capture d’écran 2024-04-09 à 13 41 33

Dans cet exemple, la chaussée la plus à l'Est est la plus courte, donc un calcul d'itinéraire basique passera par celle-ci du Nord au Sud et du Sud au Nord. Or on souhaite récupérer les deux chaussées.

jjacquelinet commented 3 months ago

Pas facile de donner une direction et des priorités mais il faut faire attention au scope creep car la modélisation de la voirie est très complexe avec plein de cas, il faut aussi qu'on dise stop pour l'instant on va traiter ça et le reste tant pis, erreur... à mon humble avis...

Je comprends tout à fait tes craintes de trop vouloir en faire, d'"écraser la mouche avec le marteau", mais on fait d'une pierre deux coups : on traite à la fois les cas simples et les cas complexes avec un seul algorithme, qui n'est pas si compliqué.

Pour l'instant je crois qu'on se focalise sur l'interdiction totale, sur toutes les chaussées de la route ou de la rue, et sur toutes les voies de chaque chaussée. Il n'y a pas encore de notion de spécification de direction, de chaussée ou de voie particulière, j'ai bon ?

À un moment est-ce qu'un dessin sur une carte ne serait pas plus simple pour ces cas-là... ?

Je pense aussi que c'est dans ces derniers cas (chaussées multiples, voies multiples) qu'un dessin sur une carte permettra aux cas les plus complexes d'être traités.

jjacquelinet commented 3 months ago

Je reviens sur ce que j'ai écrit hier : "calculer tous les chemins accessibles à partir d'un nœud" : on y arrive aussi en sélectionnant les géométries par le nom de rue ou de route, évidemment 😵‍💫 … et ça "casse" la sélection entre deux numéros de rue ou entre deux PR vu qu'on part dans tous les sens. Il faudrait donc plutôt partir sur la création d'une géométrie de référence via un calcul d'itinéraire classique ?

florimondmanca commented 1 month ago

Résultat d'un point avec @mmarchois

Vu les remarques de Waze #716 relatifs aux "segments", on devrait peut-être étudier sérieusement la piste de passer à une représentation basée sur les "tronçons de route" BD TOPO (la table voie nommée est obtenue par concaténation de tronçons portant sur la même voie donc théoriquement tout ce qu'on peut faire aujourd'hui peut aussi être fait en partant des tronçons)

En effet une fois qu'on a les tronçons de route, on peut faire les opérations plus avancées comme du calcul d'itinéraire pour déterminer la suite de tronçons à sélectionner entre les deux points demandés (du N° untel à l'intersection untelle...).

On peut aussi donner la localisation découpée en tronçons à Waze

Mathieu est en train d'importer la table troncon_de_route de la BD TOPO en local (elle pèse 13 Go). De mon côté je retélécharge la BD TOPO aussi mais les serveurs de fichiers l'IGN sont un peu lents donc je l'aurai cet après-midi.

En attendant d'explorer la table, stand by

florimondmanca commented 1 month ago

Je pense me replonger sur ce problème maintenant qu'on peut travailler avec les tronçons grâce à #793.

florimondmanca commented 1 month ago

@MathieuFV Est-ce que tu penses avoir rencontré ce problème récemment, par ex pour la saisie des arrêtés JO ? Si oui tu as des exemples ?

Je pense qu'on en est toujours à bien définir le problème et surtout à trancher quel résultat on attend en fonction de quelle situation...

À comparer aussi avec des arrêtés réels : quand il y a un terre plein central (cas d'une voie de transports en commun), est-ce qu'un arrêté qui va du N° X au N° Y précise le côté concerné ?

MathieuFV commented 1 month ago

Voici un exemple pratique : La zone rouge JO qui concerne Paris centre a pour une de ses limites l'avenue Franklin Delano Roosevelt entre le Cour la Reine et l'Avenue des Champs Elysées. Comme l'avenue Franklin Roosevelt a une contre allée (comme c'est beaucoup le cas dans les beaux quartiers de Paris) on a un dédoublement de l'avenue. Quand je demande à obtenir uniquement la section de l'avenue Franklin Roosevelt qui m'intéresse j'ai donc un problème de géocodage (voir capture d'écran). A noter que ce cas existe plus généralement dès lors qu'on demande le calcul d'une intersection entre une voie dédoublée et une autre voie.

J'aurais pourtant besoins de ne localiser ma restriction de circulation que sur la section (allée + contre allée) de l'avenue entre les deux extrémités que j'ai citées, car la section au Nord de l'Arc de Triomphe est en zone bleue.

Ca soulève aussi une autre question, quid d'une situation où je ne souhaiterais obtenir que la contre allée dans localisation par exemple ? Est-ce que l'utilisation de la table tronçons de route nous amène des solutions pratiques pour choisir, sur les rues qui possèdent plusieurs voies, celle qui nous intéresse ?

AvenueFDR

florimondmanca commented 1 month ago

Je t'avoue qu'une option qu'on pourrait envisager c'est que quand cette erreur se présente, on permette de sélectionner les tronçons qui nous intéresse précisément... (sur une carte typiquement)

Car je pense, au final, que dans ces cas ambigus où cette erreur se produit, il n'y a probablement pas de solution calculatoire toute faite

johanricher commented 1 month ago

avenue Franklin Delano Roosevelt entre le Cour la Reine et l'Avenue des Champs Elysées A noter que ce cas existe plus généralement dès lors qu'on demande le calcul d'une intersection entre une voie dédoublée et une autre voie.

Je reproduis la même erreur que toi, y compris en mettant pour le point A le numéro d'adresse "1" (juste avant le cours la Reine) et pour le point B le numéro d'adresse "43" (le dernier avant les Champs), donc je dirais plus généralement que le problème de géocodage se présente quand, pour un même point auquel on souhaite rapprocher un linéaire, la géométrie dans la BD TOPO possède deux linéaires.

Ici on voit qu'à la hauteur du point d'adresse "1" il y a deux linéaires en parallèle : l'avenue Roosevelt et sa contre-allée.

image

obtenir que la contre allée dans localisation

C'est la limite du géocodeur qui prend en entrée le libellé d'une voie... Etant donné que l'avenue et sa contre-allée ont le même libellé de voie dans la BD TOPO (et le même ID dans la BAN), le géocodeur ne peut pas faire la différence entre les deux.

Sachant que la seule chose qui compte pour la diffusion dans Waze c'est que le point de début soit suffisament rapproché du début du segment, et que le référentiel Google Maps est foutu un peu différemment mais si notre géocodage se rapproche au début du tronçon, ça fonctionnerait.

image

Il y a certainement quelque chose qu'il faudrait explorer dans ce gécodage en particulier. Le résultat du géocodage dans nos données devrait être la totalité de la géométrie récupérée depuis la BD TOPO comme sur cette capture :

image

MAIS : ce n'est pas grave que les deux soient mélangés car pour accéder à la contre-allée il faut passer par l'avenue donc ne pas indiquer la contre-allée comme fermée n'a aucune utilité.

Autre réflexion / idée de solution : proposer une troisième option en "type de point" (en plus de "Numéro d'adresse" et "Intersection") : "Début de la voie" qui correspondrait au début du tronçon situé au début de la voie. Ici par exemple, en mettant "Début de la voie" au lieu de l'intersection avec le cours la Reine, le calcul de section aurait fonctionné.

sélectionner les tronçons qui nous intéressent précisément... (sur une carte typiquement)

On avait évoqué cette solution pour le long terme. Ca reviendrait à développer une UI assez similaire à celle du Map Editor de Waze mais basée sur le référentiel BD TOPO plutôt que sur celui de Google Maps. Je ne sais pas si ça a déjà été fait... ? Dans l'écosystème OSM iD propose une telle UI clé en main et qui pourrait éventuellement être forké. Sur l'échelle du skateboard à la voiture on est carrément sur un avion privé. :)

florimondmanca commented 1 month ago

"Début de la voie" qui correspondrait au début du tronçon situé au début de la voie. Ici par exemple, en mettant "Début de la voie" au lieu de l'intersection avec le cours la Reine, le calcul de section aurait fonctionné.

Le "Début de la voie" n'est pas forcément évident à trouver dans les données BD TOPO. Il faut croiser le sens de numérisation (ordre des points dans la géométrie) avec le sens de circulation, si tant est que par "début de la voie" on veut bien dire "début du point de vue du sens de circulation"

Sinon, j'ai regardé les points d'intersection obtenus par DiaLog

Screenshot 2024-06-04 at 09-58-04 geojson io powered by Mapbox

{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "properties": {
        "name": "Av CE",
        "marker-color": "red"
      },
      "geometry": {
        "type": "Point",
        "coordinates": [
          2.3101193921858396,
          48.868981243824564
        ]
      }
    },
    {
      "type": "Feature",
      "properties": {
        "name": "RP CE",
        "marker-color": "blue"
      },
      "geometry": {
        "type": "Point",
        "coordinates": [
          2.31007992448164,
          48.86875318199477
        ]
      }
    },
    {
      "type": "Feature",
      "properties": {
        "name": "Cours La Reine",
        "marker-color": "black"
      },
      "geometry": {
        "type": "Point",
        "coordinates": [
          2.3102801848319183,
          48.864919820961255
        ]
      }
    }
  ]
}

On voit déjà qu'en fait l'extrémité nord qui correspondrait à ton dessin Johan est obtenue quand on choisit "Rond point des Champs Elysées" et pas l'Avenue (dont le point d'intersection tombe au milieu du rond point, paradoxalement)

Autre point de donnée : si je choisis Rond point des CE + Impasse d'Antin, ça fonctionne. Pourtant la contre allée est déjà là entre ces deux endroits, mais elle n'a pas été incluse dans la section

Screenshot 2024-06-04 at 10-08-09 geojson io powered by Mapbox

 {"type":"GeometryCollection","geometries":[{"type":"LineString","coordinates":[[2.310146487,48.868736778],[2.310137212,48.868819464]]},{"type":"LineString","coordinates":[[2.310165793,48.868411326],[2.310164072,48.868438297],[2.310146487,48.868736778]]},{"type":"LineString","coordinates":[[2.31017149,48.868289947],[2.310165793,48.868411326]]},{"type":"LineString","coordinates":[[2.310182372,48.868085859],[2.310173163,48.868266574],[2.31017149,48.868289947]]},{"type":"LineString","coordinates":[[2.31020557,48.867672293],[2.310182372,48.868085859]]},{"type":"LineString","coordinates":[[2.310234144,48.867161629],[2.31020557,48.867672293]]}]}

Et pour info, voici ce que DiaLog considère être la voie entière pour l'avenue FDR, on voit bien que la contre allée entre le rond point et l'impasse fait bien partie de la géométrie

Screenshot 2024-06-04 at 10-11-25 geojson io powered by Mapbox

{"type":"MultiLineString","coordinates":[[[2.310283707,48.865889338],[2.310282564,48.865563768],[2.310282166,48.865490919]],[[2.310032478,48.872815544],[2.310023582,48.873075403]],[[2.310039832,48.872569167],[2.310032943,48.872780472],[2.310032478,48.872815544]],[[2.310047281,48.871389272],[2.310039832,48.872569167]],[[2.310036702,48.87054113],[2.310046263,48.871363185],[2.310047281,48.871389272]],[[2.31020557,48.867672293],[2.310182372,48.868085859]],[[2.31017149,48.868289947],[2.310165793,48.868411326]],[[2.310146487,48.868736778],[2.310137212,48.868819464]],[[2.309994234,48.868292523],[2.310022246,48.86751565],[2.310043261,48.867164126]],[[2.310234144,48.867161629],[2.31020557,48.867672293]],[[2.310253544,48.866828983],[2.310234144,48.867161629]],[[2.310043261,48.867164126],[2.310057179,48.866936672],[2.310064704,48.866780229]],[[2.310283707,48.865889338],[2.310094608,48.865860369],[2.310116814,48.865212966],[2.310280185,48.864919821]],[[2.310282166,48.865490919],[2.310280565,48.865096995],[2.310280185,48.864919821]],[[2.310036702,48.87054113],[2.310067364,48.869873094],[2.310076038,48.869732846],[2.310075127,48.869698666],[2.31007405,48.869677075]],[[2.31007405,48.869677075],[2.31009016,48.869284155],[2.310101572,48.869143023]],[[2.310270301,48.866284075],[2.310283707,48.865889338]],[[2.310064704,48.866780229],[2.310083272,48.866304581],[2.310270301,48.866284075]],[[2.310253544,48.866828983],[2.310270301,48.866284075]],[[2.310165793,48.868411326],[2.310164072,48.868438297],[2.310146487,48.868736778]],[[2.310182372,48.868085859],[2.310173163,48.868266574],[2.31017149,48.868289947]]]}
florimondmanca commented 1 month ago

Je vais approfondir les champs de troncon_de_route pour voir s'il y aurait une possibilité de distinguer la contre-allée de la chaussée "principale". Il y a par exemple le champ Nature qui indique notamment si on a affaire à un tronçon sur une route à 1 chaussée, route à 2 chaussées, rond-point, bretelle, etc... Je me demande comment il est renseigné sur les tronçons de l'avenue Roosevelt.

Il y a aussi le champ importance qui établit une hiérarchie, probablement que l'importance des tronçons de la chaussée principale est plus grande que celle de la contre-allée, par exemple 4 "voie permettant de se déplacer rapidement à l'intérieur d'une commune" (la chaussée principale de l'avenue ?) vs 5 "voie circulable non-classée à un niveau supérieur" (la contre-allée ?), à vérifier.

florimondmanca commented 1 month ago

On a bien une différence : la contre-allée est en importance 5 alors que la chaussée principale est en importance 4.