Vés al contingut

Tema de Usuari Discussió:Vriullop/Fitxer de Discussions Estructurades 1

Sempre hi ha classes

13
Resum per Amadalvarez

Creat {{map draw}} que permet mapes dinàmics amb multipunts, línies i àrees.

Amadalvarez (discussiócontribucions)

, o no....

Estic mirant com fer per posar més d'un punt dins un mapa dinàmic. Per situar-te en el tema:

  • el mòdul:Map, sap fer mapes i posar-li punts a sobre. Està copiat fa mesos, tal qual de Wikivoyages, i m'ha funcionat fins ara amb un sol punt, que es una opció que té amb el paràmetre "geotype=Point" que li indica que la coordenada que li has donat per centrar el mapa ha d'aparèixer marcada. Si no es posa només presenta un mapa esperant que se li indiquin els punts per altra via.
  • la plantilla:crea mapa dinàmic wd, crida al mòdul:map amb geotype=Point (la que funciona fins ara)
  • la plantilla:mapframe, crida al mòdul:map sense geotype (només mapa buit). Acabada de copiar
  • la plantilla:marker, crea una etiqueta que enllaça amb el mapa presentat per mapframe. Per lligar etiquetes i mapa, es fa mitjançant el "type" indicat a marker, que ha d'estar a la llista "show" que té mapframe i que es pot alterar via paràmetre. Acabada de copiar.

Dit això, l'exemple creat a wikivoyages no funciona aquí (no facis cas dels enllaços vermells de listing. És una altra mena de marker que no he volgut copiar fins que no em funcioni el marker).

Potser vaig errat, però penso que és un problema de classes, perquè, si ho he entès bé, marker crea un microformat amb class=geo, que em penso que no la tenim. He mirat la seva CSS i no l'he sabut trobar.

A partir d'aquí, només em queda recórrer a l'oracle.

Gràcies. Compto amb tu !

Vriullop (discussiócontribucions)

Sí, hi ha classes però no les que busques. Els Wikivoyage tenen una instal·lació de Kartographer diferent per agrupar els POI en el mapa. Ho diu a mw:Extension:Kartographer#WikiVoyage goals. Segons la configuració dels wikis, wmgUseKartographer està com a default, wgKartographerStaticMapframe està a cawiki entre uns pocs, però wgKartographerUseMarkerStyle i wgKartographerWikivoyageMode està només a wikivoyage. Suposo que agrupar totes les coordenades d'una pàgina consumeix molts recursos.

Amadalvarez (discussiócontribucions)

li preguntaré al Yurik.

En tot cas, si saps alguna forma per construir una estructura com la que té aquest mapa, tot seria més fàcil. Jo vaig intentar posar variables dins el JSON i em va fer figa.

Vriullop (discussiócontribucions)

Això és molt espès. Cal fer-ho amb Lua jugant amb JSON, gairebé començant de zero. De moment només he aconseguit generar un punt, però a mitges. Special:Permalink/18011540 funciona en previsualització però no surt en desar la pàgina. Em té molt despistat.

Amadalvarez (discussiócontribucions)

Em sembla que no va perquè al </nowiki><mapframe></nowiki> li cal executar el text que el segueix "tal qual", sense haver d'executar res. Quan guardes, estàs guardant la crida al mòdul, no el resultat de la seva execució.

No sé, potser dic una bajanada. No et matis. Ja li he escrit al Yurik. A veure que respon. Merci,

Vriullop (discussiócontribucions)

No pensava mirar-ho de nou fins demà, però no estava tranquil. Ja he vist el problema. Amb les coordenades dels diferents punts calcula les coordenades que ha de tenir el mapa i el zoom. Així funciona a mediawiki i a wikivoyages, però aquí només funciona en previsualització, cosa estranya i que despista molt. Si fixo el zoom i les coordenades del mapa llavors no hi ha problema. A Special:Permalink/18012041 hi ha la mostra amb el json generat. Ja surten dos punts, ara falta programar-ho per multipunts variables. Havies pensat en alguna estructura de paràmetres?

Amadalvarez (discussiócontribucions)

Ets l'hòstia !.

Doncs no ho havia pensat. Ara només tinc |lat_dec = /|lat_dec2 = , |long_dec = /|long_dec2 = , perquè la resta d'elements no els tinc variables.

Jo diria:

  • 1 elements mapa: |alçada_mapa = , |amplada_mapa = , |zoom = , |lat_dec = , |long_dec = , si és que calen per centrar
  • N |lat_decN = , |long_decN = , |etiqueta_puntN = , |color_puntN = , |imatge_puntN = 
  • 1 |forma_punt = , |mida_punt = 

Tot i que veig que marker-symbol més que parlar de la forma, diu el número que va dins.

Estaria bé que les coordenades poguessin aparèixer a l'etiqueta opcionalment, ja que veig que no apareix amb botó dret quan estàs al mapa.

Pensa que quan estiguis entrenat, em faria molta il·lusió poder dibuixar rutes (els GR, per exemple). Una mica com això.

Merci,

Vriullop (discussiócontribucions)

He mantingut el noms originals dels paràmetres geojson per no embolicar-ho, a més d'intentar mantenir-ho en línia amb l'original en allò que es pugui. Ja tens el teu mapa a Usuari:Amadalvarez/traduccions 2. Pots jugar amb els paràmetres que trobis a Mòdul:Map/multipoint com a args, explicats a https://github.com/mapbox/simplestyle-spec/tree/master/1.1.0. Alguns paràmetres es poden definir globals o per a cada punt afegint el número, per exemple marker-color és global i marker-color1 pel primer punt. És versió beta. Pot tenir canvis importants quan investigui com dibuixar línies i com importar polígons de Wikidata.

Amadalvarez (discussiócontribucions)

Quan estigui estable, l'anomenaràs simplement "map" ?. Funcionalment, no té sentit diferenciar entre 1 i N punts, oi?

Vriullop (discussiócontribucions)

Són 27.000 inclusions i amb utilitats que encara no sé què fan ni si funcionen aquí igual que a Wikivoyage. M'ha semblat que la Plantilla:Crea mapa dinàmic wd és l'única que invoca el mòdul. Saps si s'invoca des d'algun altre lloc?

Amadalvarez (discussiócontribucions)

Només des d'aquí. No hi ha pressa, només ho deia per fer endreça després de fer fressa.

Vriullop (discussiócontribucions)

Ja tens el tren transsiberià i un exemple combinant punts i línia: Special:Permalink/18018040. A més, ja és compatible amb un únic punt. Ara falta dibuixar polígons.