From 7b3e36162ef05ba0cc70005046c0ad76b7e9494d Mon Sep 17 00:00:00 2001 From: The one with the braid Date: Tue, 24 Dec 2024 14:14:16 +0100 Subject: [PATCH] chore: improve README - adds missing `borderColor` description - improves `trapezoid` and `hexagon` shape descrptions - removes deprecated Go-Ahead Bayern example - adds new Alex DLB example with both `borderColor` and `wikidataQid` set - adds new Hadag trapezoid shape sample - adds new Hamburger Hochbahn hexagon shape sample - removes deprecated "Other shapes" section Signed-off-by: The one with the braid --- README.md | 69 +++++++++++++++++++++++++++---------- examples/alex-dlb-re23.png | Bin 0 -> 4349 bytes examples/gaby-re72.png | Bin 2697 -> 0 bytes examples/hvv-112.png | Bin 1310 -> 0 bytes examples/hvv-62.png | Bin 0 -> 4024 bytes examples/hvv-64.png | Bin 1420 -> 0 bytes examples/hvv-x35.png | Bin 0 -> 5172 bytes 7 files changed, 51 insertions(+), 18 deletions(-) create mode 100644 examples/alex-dlb-re23.png delete mode 100644 examples/gaby-re72.png delete mode 100644 examples/hvv-112.png create mode 100644 examples/hvv-62.png delete mode 100644 examples/hvv-64.png create mode 100644 examples/hvv-x35.png diff --git a/README.md b/README.md index 838d84b..f1c1f78 100644 --- a/README.md +++ b/README.md @@ -11,12 +11,13 @@ The `line-colors.csv` contains several columns: - `hafasLineId`: identifies the HAFAS line - you can get this by requesting a departure for the line from HAFAS (i.e. using [db-rest playground](https://petstore.swagger.io/?url=https%3A%2F%2Fv6.db.transport.rest%2F.well-known%2Fservice-desc%0A)) - `backgroundColor`: Color-Hexcode for the display background color - `textColor`: Color-Hexcode for the text color +- `borderColor` Color-Hexcode for the border of the shape - `shape`: Specifies the shape of the icon --> see examples below - `rectangle`: Just a rectangle - `pill`: Rectangle with completely rounded corners - `rectangle-rounded-corner`: Rectangle with rounded corners - - `trapezoid` - - `hexagon` (not yet supported) + - `trapezoid` A trapezoid shape with a broad top and a narrow bottom side + - `hexagon` A pill with pointy tips - `wikidataQid`: Wikidata QID for the line (if available, can be empty) ## Contributing @@ -54,20 +55,22 @@ Please keep the PR's small. If possible, create a small PR for each operator. +RE 23
-- `shortOperatorName`: gaby -- `lineName`: RE72 -- `hafasOperatorCode`: go-ahead-bayern-gmbh -- `hafasLineId`: re-72 -- `backgroundColor`: #ef7c00 -- `textColor`: #ffffff +- `shortOperatorName`: alex-dlb +- `lineName`: RE 23 +- `hafasOperatorCode`: alex-die-landerbahn-gmbh-dlb +- `hafasLineId`: re23 +- `backgroundColor`: #ffffff +- `textColor`: #006666 +- `borderColor` #006666 - `shape`: rectangle +- `wikidataQid` Q130542294 -Entry: `gaby,RE72,go-ahead-bayern-gmbh,re-72,#ef7c00,#ffffff,rectangle` +Entry: `alex-dlb,RE 23,alex-die-landerbahn-gmbh-dlb,re23,#ffffff,#006666,#006666,rectangle,Q130542294` ### DB Regio AG S-Bahn München, S7 S7 @@ -79,11 +82,13 @@ Entry: `gaby,RE72,go-ahead-bayern-gmbh,re-72,#ef7c00,#ffffff,rectangle` - `hafasLineId`: 4-800725-7 - `backgroundColor`: #8a372f - `textColor`: #ffffff +- `borderColor` *does not apply* - `shape`: pill +- `wikidataQid` *not available* -Entry: `mvv-db-sbm,S7,db-regio-ag-s-bahn-munchen,4-800725-7,#8a372f,#ffffff,pill` +Entry: `mvv-db-sbm,S7,db-regio-ag-s-bahn-munchen,4-800725-7,#8a372f,#ffffff,,pill,` -### KVV: Albtal-Verkehrs-Gesellschaft mbH +### KVV: Albtal-Verkehrs-Gesellschaft mbH, S1 S1
@@ -94,14 +99,42 @@ Entry: `mvv-db-sbm,S7,db-regio-ag-s-bahn-munchen,4-800725-7,#8a372f,#ffffff,pill - `hafasLineId`: 4-a6s8-8 - `backgroundColor`: #6e692a - `textColor`: #ffffff +- `borderColor` *does not apply* - `shape`: rectangle-rounded-corner (a pill with less rounded corners) +- `wikidataQid` *not available* + +Entry: `kvv-avg,S8,albtal-verkehrs-gesellschaft-mbh,4-a6s8-8,#6e692a,#ffffff,,rectangle-rounded-corner,` -### Other shapes: +### HVV: Hadag, 62 -#### Trapezoid +62 +
+ +- `shortOperatorName`: hvv-had +- `lineName`: 62 +- `hafasOperatorCode`: *not available* +- `hafasLineId`: 6-hvvhad-62 +- `backgroundColor`: #009bb6 +- `textColor`: #ffffff +- `borderColor` *does not apply* +- `shape`: trapezoid (a shape with a broad top and a narrow bottom side) +- `wikidataQid` *not available* -64 +Entry: `hvv-had,62,,6-hvvhad-62,#009bb6,#ffffff,,trapezoid,` -#### Hexagon +#### HVV: Hamburger Hochbahn AG, X35 + +62 +
+ +- `shortOperatorName`: hvv-hha +- `lineName`: X35 +- `hafasOperatorCode`: *not available* +- `hafasLineId`: 5-hvvhha-x35 +- `backgroundColor`: #eb452e +- `textColor`: #ffffff +- `borderColor` *does not apply* +- `shape`: hexagon (a pill with pointy tips) +- `wikidataQid` *not available* -112 +Entry: `hvv-hha,X35,,5-hvvhha-x35,#eb452e,#ffffff,,hexagon,` diff --git a/examples/alex-dlb-re23.png b/examples/alex-dlb-re23.png new file mode 100644 index 0000000000000000000000000000000000000000..af5e76e1bbb4fb63e1bdff2d2540ddf3649bfcc0 GIT binary patch literal 4349 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 diff --git a/examples/hvv-112.png b/examples/hvv-112.png deleted file mode 100644 index 59121409c794aa03e7b38e0ce5c38c934832ae80..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1310 zcmV+(1>yRMP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D1hYv*K~#8N?c7~R zTW1`{@t?+|39T`%F^w9_91|2AY_z+O?qU^+SkU2M1q+rrI=c2k*k&VC<~lDrW;$%gXz}CtrMx(B*y_37gE9 zKS9ywpVEjA?nj`Amm1qHZ2R!UHK2%>8SjYP0*ZLj@r=kNpok|QuZXGx@{FfD(E+P> z78UCcw;qT3Xr&U4V=(_P0Y}2mtGL%gD>Ku*-U{<~ZrJC&C=Vz6jP+SK0uNvxy^6x7 zD*A5uctlhckXyX!`sW+E^v5oks`t^P8dWfUHUPW#7K&P`kVmspZR|*1ls&kLqSkuo z9cJVkY2|bKkY}+$-`EPv?Fp2RcfshORWhlKs5l^xc>1Pucxn6>lux-8ZRj21J3`^N zw@@0GKuPaO=nv4mEG;M=W;>FZ#+l_Gj|U&=fq}+ysfnm4pz3(%ucP#jS=ev)VE^&M z$Sj7Mo%A-NGH2h3_b|0Gsi<5;7iYOxTa*KQ(`Y$HqX?A{Rk zHE+ZJ<=y1J(}D*9&om7Z6+u@+iz>*8C@El8;zdG;{W^-}4;t{Oq#1#!2(3^kwu)!J zPa^Ek@$(2bCd?VCuKl(23t4Jpx5U^42+6XTFD}(MA)ARuOfbg@5odjrq!S z7eC`u=w6R#xadaNogSE8O>*TZGKaA9J@}lHG{IMs?=c^0y2N z;|QLpgWvVv#bYF&#O$?*hCVkAo=^6Aw~Cmj8%q^!SpJ!&IFlNWksOfOD-m_=1F&99 zcBVOprxzNqczOu`&=hZS;xV!UGPxhI1;tlRLPw)5k!dV9zk@%&nV|{(*>@2D2^we+IWoWfJ|;h+#NjPF z;xXL+I!WAyN{?qehT9RiNgRo(@s7uc{}ZEe+>bzEcZq-+Cjx4m2&i!)pr!%;0^FkU UUp5|C761SM07*qoM6N<$g1QxI^Z)<= diff --git a/examples/hvv-62.png b/examples/hvv-62.png new file mode 100644 index 0000000000000000000000000000000000000000..12faa45a5a12fb9fb13be3316af49355d94304ee GIT binary patch literal 4024 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 a2Jj!rczc1^|AwFd0000-qn=A09XIp>@M zayjkZ?e43;PjGj_?ey%-&g|XP_wng>+tXcLGd0s){nuZ<7z;Tq(J0l4;Uc2uaM~yA4cN{t zkR7Cw={HdJp8KVBqG@-emM=c0>TwrPtg#`j6ZHn`I2Q2bwMl29K;7}^Q z>N=u8mXYStZR~R-4?ib;GrSAzwSd6ojh|u5AhtPD{Y|r|@qs&RQQGU&vw&F(XK-9Hv-Z z4IgCJP|Hu>QOhUqQ~0BIDDur0<_GNPSNa1Y_+S+-&oW1H8b9YNDrUpXBVRC>_=rRz zR5Nu9MJv`>^5|fVozwkDRbPz{-A$qA9+escI_DmL3gsTv(-fSg<@1lI;l5ib{PHtW zcd;uSiIw#gl?Z1_6_=N?Be@Dc#}8%svWLjO>E?;|lSA>9 zL(fckDO5ahHU$qkTJ@~dP8&<1m!CHD0Op=}78Udx%FDJQL+y<=68B-$c@(Q$Z}bvX zJ3wm6Z+*=4^=)0~R!4%)0+)Bgohd#Gpj<<>#)=V6w7RS3YIvf3sxo_$4mn^I}+w2phUBmlCQYb%=E~# zBe@wrr}x0tTseZU3^F673-6??9d=2)l#v^i7oJX$AHOx!W&SxAQvP|IhovKtpMRk6 zo3Bvwr|%Q~A2vpy0XQ)LFA<2yIsACa+I}b9J{s;?LJiBWH>8iUQE>l5sCcTmYm*J= zc1ME#Sv&4ZB{Od^h08PNNG`|EA?j6j%l*8U$xgVx;$~iO3Q;tY?7k=bo^y21R;C(- zH1bBj{uYLv7!_u^DV?*NvUb_?pDQ>+7!axkK6`8V^aDdZ1-l(dMWe40>wA^(K5c#9 z9;TLfImh&(qA^nwxD6YVmKMSa#_b|-c~{>g4JDFyqzu8&<@X;>`DdN4 zx^Hz0XHe6__ZYvQxp`E+{9)Dl8BxH>{=K9V6cMl}TeOPbdWF>d)*7l?GM6IXePvvq zzguQ)zq8mR6YHmx`la)!@gDw7Qu0pgO9g{QC%$}s`H|<@Q?jSbZf=I+OU{up2|tIx z!;%Nc-+9Z#H*9q!RrEc9VhweM?soopLn!~8!K${kS6^zHhc9^WQKG-_E6*CzL9bDM zp9?6z-!RqB%^$u))njM<4#WKD*WoRR5RrgS=HJ_d%QsLA~hn09Vt`sbH&qcpx}Pp6K%nyD-{Dyr05^N zwrQiH@zd2X5(F5AoI#QAzcylD+uM|0e}~v4D`oxZhf$2bzA{ogdA{nTzv&UCOuN40 zQl=TD_%h^3nT(%9&VKn~1RfF(QA001MYYrQ**OuR!$V4p%ZiuA`&Ux^qHATIPg~mx zmci^`wpf2vj?f3sj89ZQp;x_ zYCdZ?Gs4+Xyx_32f;Zl=hI*Oj)7G{{6J}D*VaKV)s5tldq+eX+MP(dR33S;e;m;nO zG@HW!#aEk-^E< zb_r$g(N(>)JLw>4hwrrd6%MHvC-hY_nKPW%Ja2`n8QljczHr8*hs)D-B)8z_tg=2( zzSsjO1@jQRmD=a zieX1a&$q0)S8nYG=XPbh+}EP`(sU$O;pZ&0Do*WjdLJ*K2de-oxw%>V8AR*=za}<{ zP~}C8)%*5K3$;nTtL)wOrV>8jRSL@EAUrQ40Mf!Kl~TcnyLcWvX|;eJ#h1#F+=!pE z>Lv>GHZSp%Y%=wWucO9$ZzViT-e%k#HnWR2EQDeEs7{F2~PVb}z99 zLg0Z@2I2*9o$P%MR8@XM9uxAJ+$60K7RJPB9K=>#+?TMwl@*{ZimymS&0|T2rJX0* z7Ko?#YIURx!OvNBLye-G^`d%K=^@(>Hn|1o4%X%x;M-U?ZwfU%p~N7Ezabz#!tcD^p}5^Q zP<;7fkw~l~)^9DIvVibL(G|uORx#m!%h#V7c@9%*<0~vuCHna|-5U@fe`y(~P3+vt z=YUcril~|xn3rI+b0?d|{-Fz;v*ElgWnq+ecK4z9HLg;J zP}}>&#amb>(GEcufnZ?Po^*(mBk?l4<*UyK8NW@ucS8c86;d>23gsMQJvm9V;xAE| z(agThig~5053xrQOS|Xn$<I1FGhO2Iy(j+aX55*bHAZK?3PYkA4}IW>R$ zuAt_!LXd@9FmM#*f{-PC`N)nNUB8ZS$Q!G#0w3>6! z5#ph5;e^A;uRjrjQF?-GI2y^16`AAW1GR5%b|QRpCu(Ji&!&h6op??!)9#LE52hs zBN9s}221)oZ$W{rwxR4Dc4dgu!K$p^_{*9eUoFDmPKkfBEn2JO@qbmq!4Z6w+y=EW zV=F=7#Tfz{&Lg!ULPPsl#!PBPNxQExn)!&tzY5OlA^uvsNe~K0phT~7x6?U9A_r{I zy_$RyO%LBqbqlX{lR2ez(IS=91g#?b6U)5zSTtD=Z->YwmL~r4O%e>-aOYxbSi#la zTqt?H`!T?Fqza8e{N}G3dRAJ_!1TCL63C zKS-J-$DlfnHPbqXjsE$YNIge_9Kyf}!l>}dL8nlJ*>v0}dNj>Wb1euyiThsEq_r}W zbm$7(gLr=u2dFd-^4m`A13T%Z%%CI51LulKYbYVGQH*F%N_Qf)@sxK`AGOXLbwu>hDbYhq)Ll1;nx5ozmJAZT zFaL%qBy}V-bQ|G^8T)JUHefF?jQ0|Z6o?nCH&1lk?_&8!4AgX+=+#EukZ0wTzIwcS z^*7I^#?`kwrIz%#M#^OxawLpgzhoX|DwIfl#E*!j9A2!+#IPfwqfCVoX_4v+PHV=~0Sl%j`R6jjDyJ+Y z2m%imo@yDsE!oX6`a7~@ku9qfr!#wzD4EA~pp;TK=PGJ?it9|dTtvDJ2Nx)iyzrWo zBZ<7F41*Hsm3cwM22^g)73`_N`K_q6)Xe!d)t9L$jGcTY^pw6DV(8|@PrRq8B^Dm=zZ2}rj4<* z++?Z`RN=@g1lCRU=3g+~ImnO>!x3~e!vdSCjbyF|X0UYr?Na4kRXggVPK+)y4WBQzpUP}?NPc0C2W)el=b@FjBIz}43N*ZP@f9;K&3bhUuw&~ zO8lJ6y)f-a!kHLiUpf42S3-$2sj5t-j~8AtnR1WirC_{pN_FLhry1tg2Gy63PsXjP zt`1c|)>1N+-})L=$Yn5XcVrfoAmzY_}s7@qSH@))&VoI7V@ufZH4OeKn|` zjp~}RBVi!%K)D1;gf~msQm$;ywTOHJbq~Z2O{Ey2w8WcDZ%3eZXpAhdKL!3T> z6$mz=ERG~8 zx%jm1Z}WR^w1(#;zIO4Br0f%j4%FU_*3}5=Eox~NUuNhO*!tfTKu#Ce#%)VbrwM#} zR`E+1c&-gMDI9S*r`Pv3++MGtWsZaaWY*;=Yp&6Opxx#AtjYs4L3DUN!riU>-ev`F z+~P^D`QP?Y&0icMGc}YIq8Y?M6~Dop`N?#_dSa_1@%ZBKb>+=cU!o1V z+T}>0m!D=5nJKQLd&ay$JqA#%Rbsg#K{4sd;TFtB?{r_(cp9s&Zf}3oxRc5zBkIIX<-mAssSPF;p zx|$tADMl-uqtbeC--BA&Q+M5)kr$l}TL~CJJgA@s4n6;vwV`C*2WIcyRp^EQ0`@>! zp>>tA;M)84D{AJHl+ZJeFq-~T!}CdZLmB*>jBfTg5;VvpD3OfCY-lS8PI%KE;8S%! z7-_JXXXJSd0R!-BbHp)%O+Q1M1f!}%AR#4n`Kue~!g_7B?LT_4uHd!`y7e2$P_4%jKRFNnP~xmpPRExP-od8wmK3Nb~}{F z4x@T~y2}D)@pCe>u-%b_GclA%;PNWg$>`>_^(>IG1w`Ff#!4DFgG*(wv^WwJ6ck@v zK^&W9Pdp2x!vdlbIcE+lsk7`DJ8g~xPR@Duf29+hpZNut{dD@#<2rG zCu2Kj9SNE;POJK|A(_ESBx6~xZQ3j#sIz7=^4$RcoLx#e??^l|K#7p9-chOr+I2HK iV!s