Web del MiraMon

La simbolització al MiraMon


Conceptes generals de la simbolització al MiraMon Taules de simbolització al MiraMon
Vídeotutorials de simbolització al MiraMon

Conceptes generals de la simbolització al MiraMon

El MiraMon permet un ampli ventall de simbolització (colors, trames i patrons per a polígons, fonts sofisticades per a textos, símbols de punts, semitransparències, etc) com de visualització de la capa a la llegenda (quants d'aquests símbols apareixen a la llegenda i com ho fan).

La simbolització es realitza a partir d'una taula de simbolització (de colors, de trames, de fonts i d'icones), en la qual es defineix, per a un nombre determinat d'entrades (registres), la simbolització (el color, la trama, etc) associada a cadascuna d'elles.

Prèviament a la descripció de cadascuna de les taules de simbolització, és precís entendre alguns conceptes clau en la simbolització:

1. Format i contingut de les taules de simbolització del MiraMon

1.1 Format de les taules de simbolització

Les taules de simbolització poden estar integrades en l'esquema relacional de taules alfanumèriques associades als objectes de la capa o bé poden ser taules aïllades. En tots dos casos se suporten en format DBF o en qualsevol format accessible via ODBC (MDB d'Access, Oracle, etc); en aquest darrer cas, poden ser taules físiques, vistes predefinides o consultes SQL construïdes dinàmicament.

Els camps acceptats per les taules del MiraMon poden ser de tipus caràcter, numèric, data i lògic:

  • Els camps de tipus caràcter o "C" poden contenir cadenes de caràcters com ara "Barcelona", "Sant Pol de Mar", "273" o "34.5". També poden contenir expressions que hagin de ser avaluades. De moment les expressions suportades són de tipus xpath, com ara xpath("http://www.meteo.cat/servmet/opendata/ctermini_comarcal.xml","/smc/prediccio[0]/variable[0]/@data"). Això s'aconsegueix indicant al GeM+ que el camp és d'aquest tipus activant la casella "És expressió".

    Totes les propietats mostrades pel camp (descripció, unitats, etc) en realitat fan referència al resultat de l'expressió un cop avaluada, no al text en si de l'expressió, llevat del nom del camp.

  • Els camps de tipus numèric o "N" poden contenir valors numèrics enters o reals de pràcticament qualsevol precisió, com ara 2004 o 3.14159265 (enters entre 1 i 32 bits, reals de precisió simple i doble).
  • Els camps de tipus data o "D" poden contenir una expressió de data, com ara 4-08-2024.
  • Els camps de tipus lògic o "L" poden contenir un valor veritat o un valor fals.

Aquesta denominació s'ha d'entendre genèrica, no lligada a cap format concret (DBF, MDB, Oracle, etc.) i sense perjudici de les limitacions de certs formats de bases de dades (per exemple, els camps lògics no existeixen com a tals en certs gestors).

En termes generals, els camps de tipus caràcter i lògic s'usen per a expressar variables categòriques i els camps de tipus numèric i data s'usen per a expressar variables quantitatives contínues i ordinals. No obstant, un camp de tipus numèric i data també pot ser tractat de forma categòrica si està explícitament documentat en el fitxer de metadades com de tipus categòric o s'ha modificat el tractament en les opcions de visualització de la capa amb la finalitat, per exemple, que un valor numèric 123 s'interpreti com un text "123". Així mateix, un camp de tipus categòric pot ser tractat com a numèric si està explícitament documentat en el fitxer de metadades com de tipus quantitatiu continu o de tipus ordinal (o modificant els botons radials del tractament de la capa), amb la finalitat, per exemple, que el text "123" s'interpreti com un valor numèric. Aquest casos, però, no solen ser habituals.

Si es vol optimitzar l'obertura de bases que continguin grans taules DBF, es recomana tenir-les en el joc de caràcters ANSI i no en OEM a fi no haver de fer traduccions durant les operacions de simbolització en què intervenen camps de tipus 'C'.

1.2 Contingut de les taules de simbolització

Les taules de simbolització contenen diversos camps, uns comuns a totes les taules de simbolització i altres específics en funció de la simbolització corresponent (color, fonts, etc).

Camps comuns per a cada qualsevol tipus de simbolització:

  • CLAUSIMBOL: correspon al valor a usar com a clau identificadora de la simbolització la qual pot ser del mateix tipus que el camp que indica la simbolització, és a dir, que pot ser un camp numèric, però també un camp categòric o data si convé. També existeix la possibilitat que la CLAUSIMBOL sigui una parella de camps [MIN_SIMBOL, MAX SIMBOL], sempre de tipus numèric. Com a excepció, i per compatibilitat amb versions anteriors del MiraMon, el camp CLAUSIMBOL es pot dir NOM_SIMBOL en les taules de simbolització referides a icones, si bé es recomana anar abandonant aquesta denominació. L'amplada màxima de camp CLAUSIMBOL (o NOM_SIMBOL en nomenclatura antiga) de les taules de simbolització de punts és de 100 caràcters. A més, s'afegeix un avís si una taula depassa aquest límit. Si es necessita ampliar aquest límit, cal escriure a suport@miramon.uab.cat.
  • DESCRIPCIO: correspon al camp que conté la descripció d'aquell símbol (la que típicament es mostrarà a la llegenda). El camp descripció és de tipus categòric. El camp descripció, no obstant, pot pertànyer a la taula que conté el camp que indica la simbolització, en lloc de pertànyer a la taula de simbolització. No obstant, per simplificar l'explicació, aquí es planteja que el camp DESCRIPCIO pertany a la taula de simbolització. Per exemple, es vol acolorir els municipis d'un mapa segons la comarca a la qual pertanyen i es desitja que la descripció sigui el nom de la comarca. En aquest cas, el camp que indica la simbolització (CLAUSIMBOL) pot ser CODI_COMARCAL i el camp que indica la descripció (DESCRIPCIO) pot ser NOM_COMARCA, camp que pertany a la mateixa taula que CODI_COMARCAL, en lloc d'un camp específic DESCRIPCIO de la taula de simbolització. Tanmateix, la solució més habitual i natural seria simbolitzar directament pel camp NOM_COMARCA.

Camps específics per a cada tipus de simbolització:

  • R_COLOR, G_COLOR i B_COLOR: les taules de simbolització de color (color d'omplir polígons, color de línies, etc) defineixen el color a partir d'aquests tres camps, un per a cada component RGB, els quals contenen valors numèrics compresos entre 0 i 255.

  • R_TRAMA, G_TRAMA i B_TRAMA: les taules de simbolització de color de trames són anàlogues al cas anterior, amb els tres camps RGB de valors numèrics compresos entre 0 i 255. També s'admet la denominació R_COLOR, G_COLOR i B_COLOR referida al color de la trama.
  • TIPUSTRAMA: les taules de simbolització de trames contenen un camp que defineix els diferents tipus de trama, el qual conté valors de tipus categòrics (s'utilitza "I", "-", "+", etc).
  • FI_ICONA: les taules de simbolització d'icones contenen aquest camp, el qual és categòric i defineix la ubicació de les imatges utilitzades com a icones. Com a excepció, i per compatibilitat amb versions anteriors del MiraMon, aquest camp es pot dir FI_SIMBOL en les taules de simbolització referides a icones, si bé es recomana anar abandonant aquesta denominació.
  • FI_MOSTRA: en les taules de simbolització d'icones, si les icones desitjades són diferents a les que conté el MiraMon (típic en mapes ombrejats), el camps FI_MOSTRA, de tipus categòric, defineix la ubicació dels fitxers de mostres. Quan un registre d'aquest camp conté el valor especial "*" indica que es vol usar, per a aquell registre, el símbol estàndard de la taula de símbols.
  • FONT: les taules de simbolització de fonts disposen d'un camp categòric per a la descripció completa d'una font (tipus, color, mida i unitats, halo i el seu color, inclinació, etc).
  • FONT, FONT_ENTIT, TEXT_FONT i DESCRIPCIO: les taules de simbolització que descriuen les fonts dels textos en una capa de punts, es defineixen a partir d'aquests camps. FONT i FONT_ENTIT són camps de tipus 'C' que descriuen tots els aspectes de la visualització de la font. FONT es fa servir per a definir simbolitzacions a nivell de tipus d'objecte i FONT_ENTIT es fa servir per a definir simbolitzacions a nivell d'entitats puntuals. TEXT_FONT és un camp de tipus 'C' usat per a exemplificar el tipus de font a la llegenda. Per exemple, un "TEXT_FONT" com "Roma" seria escrit amb la font corresponent al camp FONT del mateix registre i al costat s'hi llegiria, amb la font normal de la llegenda, la descripció "Ciutat de més d'un milió d'habitants" situada en el camp DESCRIPCIO. A continuació es mostra un exemple de l'aspecte d'una taula de simbolització de font:
CLAUSIMBOL
FONT/FONT_ENTIT
TEXT_FONT
DESCRIPCIO
3
/NArial/H20/B Barcelona Ciutats de més d'un milió d'habitants
2
/NArial/H12/C255,0,0 Sant Cugat Ciutats de més de noranta mil habitants
1
/NTimes/H8 Balsareny Viles i petits nuclis
  • Aquesta taula generarà una llegenda amb l'aspecte:

  • LIN_COMBIN: s'usa en taules de simbolització combinada de línies. El model permet, tot i que habitualment no serà necessari, definir en una mateixa capa línies amb propietats independents pel que fa a les propietats comunes de les línies de simbolització combinada: per exemple tenir línies amb gruixos en unitats mapa i estil de connexió entre segments en xamfrà barrejades amb línies amb gruixos en píxels i connexions rodones entre segments. En aquest cas, caldrà definir la clau LinCombin= del fitxer REL com a PerObjecte (LinCombin=PerObjecte) per tal que el MiraMon interpreti que la simbolització combinada s'indica per un camp de la base de dades, el qual apunta a una taula de simbolització de línies de simbolització combinada, la qual tindrà el tradicional camp CLAUSIMBOL i l'esmentat camp LIN_COMBIN (que contindrà la cadena del format de la línia de simbolització combinada).
  • FI_PATRO: s'usa en les taules de simbolització de patrons. És un camp de tipus categòric i defineix la ubicació dels fitxers de patrons usats per a omplir polígons.

Es pot trobar informació específica sobre la simbolització del color, trames, fonts, etc, a Taules de simbolització del MiraMon.

2. Tipologia de simbolització: constant per a tota la capa o indicada en funció d'un camp de la base de dades

Al MiraMon, cada tipus de simbolització (color, tipus de trama, color de trama, etc) pot ser constant per a tota la capa (és a dir, un sol símbol -color, trama, etc- per a tota la capa), o bé pot ser variable en funció d'un camp de la base de dades (qualsevol camp de qualsevol taula de la base de dades). A la següent figura es mostra, a la part superior, un mapa en el que la simbolització de color és constant per a totes les variables (carreteres principals) i, a la part inferior, el mateix mapa amb la simbolització de color indicada en funció del camp "tipus de via". Així doncs, en el primer cas totes les carreteres apareixen del mateix color (blau) mentre que en el segon cas, a cada carretera (tipus de via) se li assigna un color diferent).

En la simbolització indicada per un camp de la base de dades, el MiraMon contempla dos casos segons quin tipus de tractament de la informació del camp que indica la simbolització es vulgui donar:

  • Camps de variables categòriques: per exemple els tipus d'usos del sòl (aigua continental, infraestructures viàries, urbanitzacions, boscos, etc) són típiques variables categòriques. Tal com s'ha comentat anteriorment, es considera variables categòriques les de tipus lògic i de caràcter tractades de forma categòrica (cas habitual), així com també les numèriques o data tractades de manera categòrica (cas no habitual), per exemple que un valor numèric 123 s'interpreti com un text "123". En aquest darrer cas, cal modificar el tractament, de quantitatiu a categòric a la caixa de visualització de la capa.
  • Camps de variables quantitatives contínues o camps de tipus ordinal: per exemple els valors altitudinals d'un Model Digital d'Elevacions (MDE) són típiques variables quantitatives contínues. Tal com s'ha comentat anteriorment, es considera variables quantitatives contínues les de tipus numèric i data tractades de manera quantitativa contínua o ordinal (cas habitual), així com també les categòriques o lògiques tractades de manera quantitativa contínua o ordinal (cas no habitual), per exemple, el nivell de contaminació d'un sòl (1 per "baix", 2 per "mitjà" i 3 per "alt") és una variable ordinal que serà simbolitzada de forma molt més adequada tractant-la com a categòrica.
  • Per tal de modificar el tractament habitual de les variables, és suficient amb modificar l'opció que apareix per defecte a l'apartat "Tractament" de la caixa de visualització de la capa.

    Per ambdós casos, un cop es defineix el camp que indica la simbolització, es pot optar per triar una taula de simbolització preexistent o bé per crear una taula nova (per exemple, triant la taula "Automàtic", modificant-la mitjançant el botó "Avançades" segons us convingui i desant-la com una nova taula). En essència, aquesta tria determina quants símbols diferents (per exemple quants colors) s'utilitzarà per a la visualització del camp. El MiraMon realitzarà una projecció del camp seleccionat per tal de conèixer quants valors diferents apareixen al camp.

2.1 Simbolització indicada per un camp de la base de dades de tipus CATEGÒRIC

a) Taula de simbolització nova

Si es tria definir una taula nova, el programa crearà en memòria una taula nova amb les condicions adequades de visualització (cal recordar que aquesta taula pot ser desada en qualsevol moment a través del menú "Fitxer | Desar paleta o taula de simbolització", i la vinculació amb el fitxer REL es pot desar amb el botó "Desar..." present a les caixes de diàleg on s'estableixen les condicions de visualització).

La taula presenta els camps definits en l'apartat de format de les taules de simbolització (CLAUSIMBOL, DESCRIPCIO i el camp o camps que descriuen la simbolització, com per exemple R_COLOR, G_COLOR, B_COLOR). El camp CLAUSIMBOL és, en aquest cas, de tipus categòric i conté la projecció del camp que indica la simbolització. Per tant, la nova taula tindrà tants registres com aquesta projecció.

Com que el camp que indica la simbolització és categòric, el camp o camps que descriuen la simbolització s'ompliran amb valors diversos (per exemple diferents valors de trames, com "I", "-", etc). Si el nombre de símbols diferents és insuficient davant del nombre de registres de la projecció, es repetiran els símbols (per exemple, si el camp és el nom dels més de 900 municipis de Catalunya i el tipus de simbolització és de tipus trama, els diversos tipus de trama disponibles s'aniran assignant rotatòriament als diferents municipis).

Si el camp que indica la simbolització conté valors "sensedades", al camp o camps que descriuen la simbolització se'ls assignarà el tipus per defecte indicat al fitxer MiraMon.par i al camp CLAUSIMBOL s'hi indicarà el literal especial "%sensedades%". Si posteriorment es vol canviar aquestes assignacions, cal recordar que deixar el contingut del camp o camps de simbolització en blanc implica no pintar l'objecte (deixar el polígon transparent, deixar la línia invisible, no dibuixar el símbol d'un punt, etc). Així doncs, l'ús de cadenes buides (o totalment en blanc) es pot usar per a indicar que la categoria no ha de ser visible a la llegenda si s'activa l'opció corresponent a la caixa de diàleg "Visualització de la CAPA/SERIE a la llegenda".

Si la nova taula, creada automàticament, ha estat modificada (per exemple canviant un color dels proposats automàticament pel MiraMon), s'advertirà, abans de tancar la capa, de la conveniència de desar la taula i de desar la vinculació via el fitxer REL corresponent a la capa i/o via l'eventual Mapa del MiraMon (MMM) generat.

b) Taula de simbolització preexistent

Si es tria una taula de simbolització preexistent, el programa examina els camps de la taula i segueix la següent lògica:

  • Si la taula no és adequada al tipus de simbolització que s'està efectuant (per exemple si s'estan simbolitzant colors i se selecciona una taula de fonts, que en lloc de tenir els camps R_COLOR, etc, conté el camp FONT), apareixerà un missatge d'error i s'ha de tornar a triar. Per tal de no confondre les diferents taules de simbolització és important tenir cada tipus en un directori diferent, i si més no, amb noms de fitxers que indiquin quin tipus de simbologia conté cadascuna.
  • Si el camp CLAUSIMBOL és de tipus numèric (i no és tractat de forma categòrica), la taula es considera no adequada i es procedeix com en el cas anterior.
  • Si el camp CLAUSIMBOL és de tipus categòric, es farà una assignació directa per comparació de les cadenes de caràcters (si el camp era de tipus numèric o data tractat de manera categòrica, es comparen els valors numèrics en format text). Prement el botó "Avançades..." s'accedeix a la caixa de diàleg de Simbolització categòrica des de la qual es pot canviar diverses condicions d'assignació.
  • Les opcions d'assignació que es poden triar en aquesta caixa de diàleg són el nombre de símbols a representar i el símbol a utilitzar (per exemple el color de cada categoria). Si es modifica la taula de simbolització, cal recordar que prement el botó "Desar..." es conserven els canvis. Si es prem el botó "Casos especials", es pot triar el tractament d'alguns casos específics de simbolització.

    Quan el camp que indica la simbolització conté un valor que no es troba a la taula de simbolització, per defecte, el MiraMon li assigna la simbolització indicada al fitxer MiraMon.par en la clau "ColorObjectesSenseAtribut", com per exemple, assignació de color negre (0,0,0). No obstant, es pot modificar aquesta opció, triant no assignar simbolització de manera que el polígon restarà transparent, o bé es pot triar assignar la simbolització com a sensedades, amb l'activació de l'avís en cas d'ocurrència si es desitja.

    Un cas diferent és quan el camp que indica la simbolització és buit o no conté cap registre. En aquest cas, per defecte el MiraMon aplica el valor sensedades de la taula de simbolització. No obstant, també es pot modificar, no assignant-li cap simbolització (polígon transparent) o bé assignant el valor indicat a la clau "ColorObjectesSenseAtribut" del MiraMon.par.

  • Si el camp CLAUSIMBOL és de tipus numèric, l'enllaç entre el registre corresponent de la taula de simbolització i la cadena de caràcters del camp que indica la simbolització es realitza de forma diferent segons si el camp és lògic, de caràcters o data, o numèric (tots ells tractats de manera categòrica):
    • Si el camp que indica la simbolització és lògic, els valors TRUE es consideren 1 i els FALSE 0.
    • Si el camp que indica la simbolització és de caràcters o data, es converteix cada cadena de caràcters a un valor numèric en l'interval [0,255]. Aquesta conversió és constant, és a dir, una mateixa cadena de caràcters sempre dóna el mateix valor numèric, amb la qual cosa l'assignació de símbols es manté invariable fins i tot si la capa s'enriqueix amb nous elements o si es canvien les cadenes d'altres registres del mateix camp.
    • Si el camp és de tipus numèric, s'usa el valor numèric del camp.

    En aquests casos, malgrat CLAUSIMBOL és de tipus numèric, els valors són tractats de manera categòrica, de manera que el MiraMon no suporta utilitzar taules de simbologia amb camps [MIN_SIMBOL, MAX_SIMBOL) que defineixin l'interval d'assignació.

    Un cop feta la conversió de la cadena a un valor numèric, l'enllaç entre les dues taules s'efectua per assignació directa per defecte. Tanmateix, a través del botó "Avançades..." es pot accedir a la caixa de diàleg de Simbolització categòrica des de la qual es pot canviar diverses condicions d'assignació explicades anteriorment.

    Cal recordar que si la taula adoptada és modificada durant la sessió del MiraMon (per exemple canviant un color), el programa avisarà de la conveniència de desar la taula abans de tancar la capa, i de desar la vinculació via el fitxer REL corresponent a la capa.

2.2 Simbolització indicada per un camp de la base de dades de tipus QUANTITATIU CONTINU o ORDINAL

a) Taula de simbolització nova

Si es tria definir una taula nova, el programa crearà en memòria una taula nova amb les condicions adequades de visualització (cal recordar que aquesta taula pot ser desada en qualsevol moment a través del menú "Fitxer | Desar paleta o taula de simbolització", i la vinculació amb el fitxer REL es pot desar amb el botó "Desar..." present a les caixes de diàleg on s'estableixen les condicions de visualització).

La taula presenta els camps definits en l'apartat de format de les taules de simbolització (CLAUSIMBOL, DESCRIPCIO i el camp o camps que descriuen la simbolització, com per exemple R_COLOR, G_COLOR, B_COLOR). El camp CLAUSIMBOL és, en aquest cas, de tipus numèric i conté la projecció del camp que indica la simbolització. Per tant, la nova taula tindrà tants registres com aquesta projecció.

Per tal de conèixer si el camp que indica la simbolització conté una variable de tipus ordinal o una de tipus quantitatiu continu, el MiraMon consulta les metadades del camp. En cas que no estigui indicat, s'ofereix per defecte el que sembli més versemblant segons el nombre de valors diferents que apareixen al camp i el tipus de valors numèrics (per exemple, la presència de valors reals sembla indicar que es tracta d'un camp de tipus quantitatiu continu).

El MiraMon mostra el nombre real de valors diferents que existeixen en el camp que indica la simbolització i permet indicar el nombre de valors desitjats. També permet triar entre definir classes basades en intervals definits per l'usuari o basades en assignacions numèriques automàtiques (assignació directa, escalat lineal, escalat logarítmic, etc).

En el cas de triar assignació Per intervals definits per l'usuari, el botó corresponent permet especificar aquests intervals. Per defecte, es fan intervals basats en un escalat lineal entre valors. No obstant, us pot interessar modificar aquests intervals. Els nous intervals que definiu es desen en els camps MIN_SIMBOL i MAX_SIMBOL de la taula creada.

En el cas que es triï assignació Numèrica automàtica, per defecte s'aplica assignació directa si és possible (és a dir, quan el nombre i rang de valors demanats és igual al de símbols); si no és possible s'aplica desplaçament i si això tampoc és possible s'aplica l'escalat lineal.

Tant si es tria assignació per intervals com automàtica, la simbolització es fa, si és possible (color, mides, etc) de forma graduada. Aquesta graduació es pot modificar prement el botó de cada valor.

Per al tractament de valors sense registre, es poden consultar les indicacions donades per a "sensedades" en el cas dels camps amb variables categòriques.

Si la nova taula, creada automàticament, ha estat modificada (per exemple canviant un color dels proposats automàticament pel MiraMon), s'advertirà, abans de tancar la capa, de la conveniència de desar la taula i de desar la vinculació via el fitxer REL corresponent a la capa i/o via l'eventual Mapa del MiraMon (MMM) generat.

b) Taula de simbolització preexistent

Si es tria una taula de simbolització preexistent, el programa examina els camps de la taula i segueix la següent lògica:

  • Si la taula no és adequada al tipus de simbolització que s'està efectuant, o bé si el camp CLAUSIMBOL és de tipus categòric, es dona un missatge d'error i es deixa tornar a triar (anàlogament al cas ja explicat de variables categòriques).
  • Si el camp CLAUSIMBOL és numèric, s'apliquen les opcions explicades en el cas de taula de simbolització nova. Tanmateix, també és possible modificar els mateixos aspectes que en el cas de crear una taula nova.
  • Si en lloc del camp CLAUSIMBOL existeixen els camps [MIN_SIMBOL, MAX_SIMBOL) s'apliquen les opcions comentades en l'assignació per intervals.

Cal recordar que si la taula adoptada és modificada durant la sessió del MiraMon, el programa avisarà de la conveniència de desar la taula abans de tancar la capa, i de desar la vinculació via el fitxer REL corresponent a la capa.

3. Simbolització a la capa i simbolització a la llegenda

El nombre de símbols utilitzats per a mostrar una capa no té per què coincidir amb el nombre de símbols a usar en la llegenda. Quan se simbolitza un camp de la base de dades que recull una variable de tipus categòric (per exemple el tipus de via -AP2, AP7, etc-) el nombre de símbols utilitzats per a mostrar la capa coincideix amb el nombre de símbols de la llegenda (llevat que es vulguin ocultar algunes entrades de la llegenda per algun motiu, com ara poca presència al mapa, etc, opció que es pot realitzar indicant manualment els valors desitjats a Visualització de la capa a la llegenda). En canvi, quan se simbolitza un camp de la base de dades que recull una variable de tipus quantitatiu continu (com els valors altitudinals d'un Model Digital d'Elevacions), pot ser que es desitgi usar una taula de simbolització de color de 20 nivells de gradació i veure a la llegenda aquestes 20 subentrades, però també pot ser que, sense renunciar a l'aspecte graduat dels 20 nivells es desitgi veure només 6 subentrades a la llegenda. En el cas de les variables de tipus ordinal, habitualment la llegenda recull tantes subentrades com nivells es visualitzen, si bé pot ser imprescindible fer reduccions a la llegenda en el cas de capes amb molts objectes.

A continuació es mostra un MDE en què els nivell de visualització són 256 i, en canvi, els nivells o subentrades de la llegenda són 16 (múltiples de 200 m).

Per a més informació en relació a la visualització de la capa a la llegenda, es pot consultar Canviar ordre i propietat de les capes, del menú Visualització.

Simbolització multicamp per a una mateixa capa

La simbolització multicamp pot ser utilitzada quan us interessi indicar diferents símbols en funció de diferents camps d'una mateixa base de dades. Per exemple, es pot indicar que el color d'omplir els polígons respongui a un camp de la base de dades (en una capa d'activitats extractives podria ser la "Situació actual" -en actiu amb restauració integrada, en actiu i restauració no iniciada, etc-) i, simultàniament, es pot indicar un tipus de trama diferent a cada polígon en funció d'un altre camp de la base de dades (en les activitats extractives podria ser el "Tipus de recurs explotat" -argiles, calcàries, graves, etc-).

En els polígons, la simbolització multicamp pot aplicar-se a color d'omplir, color de les vores, gruix de les vores, tipus de trama, color de la trama i patrons, tot i que un mapa que usi totes les possibilitats simultàniament serà difícilment comprensible. En els arcs i línies es pot aplicar la simbolització diferenciada al color de la línia i al seu gruix, mentre que en els punts, es pot aplicar al tipus de símbol i a la mida dels símbols.

Cada nou aspecte que se simbolitza "per camp de la base de dades" implica una nova aparició de la capa a la llegenda. En canvi, els aspectes simbolitzats com a "constant", apareixen a la llegenda acompanyant els simbolitzats. En l'exemple de les activitats extractives els camps "Situació actual" i "Tipus de recurs explotat" són aspectes simbolitzats per camp de la base de dades, i per tant, apareixen per separat a la llegenda. En canvi, el límit de les pedreres és un aspecte simbolitzat amb color constant (negre) i gruix constant (gruix 2) i per això es mostra conjuntament amb els aspectes de "Situació actual" i "Tipus de recurs explotat". En canvi, si es volgués simbolitzar el límit de les pedreres per camp de la base de dades, per exemple amb el camp "Tipus de permís", implicaria l'aparició d'aquest nou aspecte a la llegenda, tal i com mostra la figura següent.

Multisimbolització per a un mateix camp

La multisimbolització per a un mateix camp pot ser utilitzada quan us interessi indicar diferents símbols a un mateix camp de la base de dades. Per exemple, es pot indicar que el color d'omplir els polígons respongui a un camp de la base de dades i que, alhora, el tipus de trama aplicat també s'indiqui en funció del mateix camp de la base de dades. En aquests casos, a la llegenda hi hauria tantes entrades com atributs diferents contingui el camp, i cada entrada tindrà la doble simbolització (color i trama), ja que ambdós símbols s'indiquen per un mateix camp de la base de dades. Això és el que s'anomena "col·lapsar". El col·lapse, però, només es produirà quan els criteris de simbolització siguin idèntics i, per tant, no és suficient amb què el camp de la base de dades sigui el mateix sinó que també el tractament ha de ser igual (categòric o quantitatiu), han de tenir la mateixa taula de simbolització i aquesta ha de tenir el mateix nombre de símbols, etc.

4. Simbolització combinada de línies

Les línies de simbolització combinada permeten representar de forma correcta elements lineals complexos com poden ser les carreteres, autopistes, etc. La línia de simbolització combinada es genera a través de la superposició de diverses línies elementals, que van essent "sobrecarregades" (overloaded) per tal d'aconseguir l'efecte desitjat. Per exemple es poden dibuixar una línia contínua de gruix 11 metres i color blau i, a sobre, una línia de punts i guions de gruix 7.5 metres i color blanc. Per defecte les línies es pinten sobre fons transparent (background), és a dir, que si la línia és de punts i guions entre ells no es dibuixarà cap color. Si es desitja, per exemple, un fons blanc, simplement cal indicar la presència d'una línia de fons d'aquest color.

Una línia de simbolització combinada s'especifica a través d'una cadena de text que pot ser en un fitxer REL o MMM (a la clau LinCombin=) si aplica a tota la capa, o en un camp (de nom LIN_COMBIN) d'una taula de simbolització de línies de simbolització combinada. Cal fer notar que el model permet, tot i que habitualment no serà necessari, definir en una mateixa capa línies amb propietats independents pel que fa a les propietats comunes de les línies de simbolització combinada: per exemple tenir línies amb gruixos en unitats mapa i estil de connexió entre segments en xamfrà barrejades amb línies amb gruixos en píxels i connexions rodones entre segments. L'ús de línies de simbolització combinada exclou l'ús de les línies simples convencionals. Així doncs, la presència de la clau LinCombin= indica que s'ignorarà l'eventual presència de la clau ColorConstant_L= o d'altres claus derivades, com ara ColorLinia= o GruixConstant_L= en els fitxers REL i MMM, per tal com aquests detalls són a la pròpia cadena referida per LinCombin= o a la corresponent taula de simbolització. La clau LinCombin= pot contenir:

  • La cadena que especifica la línia de simbolització combinada (amb el format que es descriu a continuació). En aquest cas el MiraMon interpreta que la simbolització combinada és constant per a totes les entitats de la capa.
  • La cadena literal "PerObjecte" (sense les cometes). En aquest cas el MiraMon interpreta que la simbolització combinada s'indica per un camp de la base de dades, el qual apunta a una taula de simbolització de línies de simbolització combinada, la qual tindrà el tradicional camp CLAUSIMBOL i l'esmentat nou camp LIN_COMBIN (que contindrà la cadena del format de la línia de simbolització combinada).

El format de la cadena que especifica la simbolització combinada és constituït per una sèrie d'etiquetes que fan referència a les diferents propietats de tota la línia de simbolització combinada i unes altres que fan referència a les propietats de cada línia elemental. Cada propietat s'especifica amb una barra de dividir (/) seguida d'una lletra característica (sensible al cas: no s'ha d'usar indistintament majúscules i minúscules) i, a continuació, si s'escau, el valor que pren la propietat. Les propietats generals s'indiquen a l'inici de la cadena, seguides d'un punt i coma que indica que s'han acabat les propietats generals i que comencen les propietats de la primera línia elemental. Important: si no hi ha cap propietat general, la cadena començarà directament amb un punt i coma. Les propietats de cada línia elemental també se separen amb un punt i coma. La primera línia que es defineix és la primera que es dibuixa i, per tant, serà la més "profunda" en l'apilament de línies elementals dibuixades. No s'ha d'escriure punt i coma al final de la cadena, llevat que es vulgui aplicar una darrera línia negra de gruix 1 (paràmetres per defecte d'una línia).

Les propietats suportades per a la línia de simbolització combinada, són les següents:

Per a la línia de simbolització combinada:

  • Nombre de línies elementals que formen la simbolització combinada: No s'especifica per tal com és deduïble del nombre de punts i coma que hi ha a la cadena que descriu tota la simbolització combinada. El nombre màxim de línies elementals que formen una línia de simbolització combinada ha estat fixat en 5, però si es necessiten més, es pot enviar un correu electrònic a suport@miramon.uab.cat i amb una simple recompilació del programa es pot ampliar tant com convingui aquest límit.
  • Unitats del gruix (WidthUnits): /M. Indica que les unitats en què s'expressa el gruix de cada línia elemental són unitats mapa. Si no s'indica s'assumeix que el gruix és en unitats píxel per al gruix de la línia a la pantalla, i en mm per al gruix de la línia a la impressora. És una propietat comuna de la línia de simbolització combinada perquè no té sentit indicar, per exemple, que de dues línies elementals que formen una simbolització combinada, una sigui en metres i una altra en píxels.
  • Connexió entre segments (Join): /K. A continuació s'especifica el tipus de connexió dels diferents segments de la línia, que pot ser en Xamfrà -X- (bevel), punt Rodó -R- (round) o en Angle -A- (miter). Exemples /KX, /KR i /KA. Si no s'indica, s'aplica R (connexió entre segments en punt rodó). La següent figura il·lustra cada tipus de connexió.

Per a cada línia elemental:

  • Tipus de línia (PenStyle): /N. L'estil indica quin tipus de línia es vol: 0 (sòlida), 1 (de guions), 2 (de punts), 3 (de punts i guions), 4 (de dobles punts i guions). Exemple: /N3. Si no s'indica, s'aplica el tipus 0 (sòlida). Si es vol una línia transparent, simplement cal deixar en blanc la totalitat de la codificació de la simbolització combinada; si es desitja que una línia elemental no es pinti (útil en el dibuixat progressiu de carreteres) cal indicar-ho a través del paràmetre color, posant-hi un color transparent.
  • Gruix de la línia a la pantalla (Width): /H. S'entén que és en unitats píxel excepte que s'hagués indicat expressament que els gruixos són en unitats mapa a través de /M. Exemples: /H3 (gruix 3 píxels); /H200.5 (gruix 200.5 unitats mapa, típicament metres, si s'havia indicat /M a l'inici de la definició de la simbolització combinada). Si no s'indica, s'aplica un gruix 1 (que serà 1 píxel si no s'ha indicat /M o 1 unitat mapa en cas contrari).
  • Gruix de la línia a la impressora (PrinterWidth): /h. Indica el gruix en mil·límetres (mm) de la línia a la impressora. Només aplica si les unitats en pantalla són píxels i no unitats mapa (és a dir, aplica si NO s'ha indicat /M). Exemples: /h.3 (gruix 0.3 mm); /h1.5 (gruix 1.5 mm). Si no s'indica, s'aplica un gruix proporcional al gruix en píxels a la pantalla, seguint el conveni que es vol que 1 píxel de pantalla s'imprimeixi com una línia de 0.15 mm (cal recordar que si s'ha indicat /M el gruix és comú per a pantalla i per a impressora).
  • Color de la línia (Color): /C. A continuació s'especifiquen, separades per comes, les intensitats R,G,B. Exemple /C255,0,0 (color vermell). Si es vol que una línia elemental no es pinti, cal indicar-ho a través de codificar amb 1 cada component de color: /C1,1,1 (tot i que si el que es vol és no pintar en absolut la línia amb simbolització combinada resulta més fàcil deixar en blanc la totalitat de la codificació de la línia de simbolització combinada). Si no s'indica color, s'aplica NEGRE.
  • Extrem de la línia (EndCap): /E. A continuació s'especifica el tipus de extrem de la línia, que pot ser Rodó -R-(round), Quadrat -Q- (square) o Pla -P- (flat). Exemples /ER, /EQ i /EP. Si no s'indica, s'aplica R (extrem rodó). Cal notar que en ser una propietat de la línia elemental, es poden combinar estils d'extrem de línia si es desitja. La següent figura il·lustra cada tipus d'extrem, així com el fet que només el tipus pla evita estendre's més enllà del final de la línia quan aquesta té un cert gruix.

Els modes pla i quadrat d'extrem de línia es mostren iguals a la llegenda per evitar l'efecte estrany si es combinessin en una mateixa capa i es dibuixessin uns més llargs que els altres; tanmateix, es respecta el seu comportament si es combinen entre si o amb el mode rodó a fi que es pugui apreciar l'efecte desitjat al final de línia.

Alguns exemples de línies de simbolització combinada:

Una cadena buida implica, per conveni, una línia transparent (o sigui, no es pinta la línia).

Una cadena amb un sol punt i coma indica una línia de simbolització combinada formada per una sola línia elemental amb els paràmetres per defecte: sòlida, de color negre, d'1 píxel de gruix a la pantalla i de 0.15 mm de gruix a la impressora, connexió entre segments en punt rodó i extrems rodons:

";/H5/C0,0,255;/H3/C255,255,0"
";/H7/C0,0,255/EP;/N1/H3/C255,255,0"
"/M/KA;/H25/C0,255,255;/N3/H7.5/C255,255,255"

Ús simultani de simbolització combinada de línies i multisèries parcials:

Les multisèries parcials permeten que objectes de diferents sèries cartogràfiques pertanyents a la mateixa multisèrie es dibuixin en un mateix "nivell" de dibuixat. Aquesta interessant propietat fa possible, per exemple, dibuixar un tram d'autopista per sobre o per sota d'una carretera comarcal, segons convingui. La simbolització combinada de línies és plenament compatible amb l'ús de multisèries parcials, amb la qual cosa és possible obtenir efectes com els destacats amb vermell en la següent figura.

Notes per a la creació de multisèries parcials (MSP):

Cal crear, dintre la taula de la multisèrie, per exemple bt25mv10mm0IdTemaData_01ca.dbf, un camp de nom MS_PARCIAL (descripció suggerida: "Multisèrie parcial a què pertany"), de tipus Caràcter i d'amplada 29. Aquest camp contindrà, en les sèries que ho requereixin, el nom de la multisèrie parcial a què pertany. Aquest nom és lliure però evidentment ha de ser diferent per a cada multisèrie parcial definida dintre una multisèrie. Addicionalment, la clau OrdreDintreMultiSerieParcial1 dintre el fitxer REL (a la secció [METADADES]) de la capa-full en qüestió indicarà les entitats que formen cada "iteració de redibuixat". Com que de moment cada MSP no té altres característiques que el nom de la MSP (que es dedueix de la lectura de la taula de la multisèrie) i el nombre de nivells de la MSP (que es pot deduir del nombre de separadors que es troben en la clau de la MSP de la capa-full), no s'ha establert una taula ni un fitxer REL que contingui atributs de la MSP. Tanmateix, i donat que el nombre de nivells de la MSP és una característica que ha de mantenir-se comuna en totes les capes-full que pertanyen a una mateixa MSP, cal que sigui coherent en totes les sèries que formen part de la MSP; és per això que el camp de nom NIV_MS_PAR (descrit com a "Nombre de nivells de la multisèrie parcial") a la taula de la MSP indica aquest valor; en llegir la taula el MiraMon controla que tots els valors de les MSP d'igual nom siguin iguals i més grans que zero i avisarà si detecta inconsistències. El nombre màxim de nivells que formen una MSP ha estat fixat en 12, però si es necessiten més, es pot enviar un correu electrònic a suport@miramon.uab.cat i amb una simple recompilació del programa es pot ampliar tant com convingui aquest límit.

Les multisèries parcials només es poden aplicar a les sèries modernes, ja que les antigues no tenen ni fitxer d'especificació de multisèrie a la qual pertany cada sèrie.

Interfície d'usuari

A més de la indicació que es pot fer des dels fitxers REL/MMM (línies constants per a tota la capa) i des de la taula de simbolització de línies de simbolització combinada (línies amb simbolització indicada per un camp de la base de dades), la caixa de diàleg de Composició de línies combinades permet a la persona usuària definir interactivament totes les propietats de la simbolització combinada de línies, tal i com es pot veure en la següent captura de pantalla:

La caixa de diàleg apareix tant en fer doble clic des d'un ítem de la llegenda, com des de la caixa de simbolització de línies i arcs.

Dibuixat progressiu

Donat que les línies combinades s'usen en molts casos per a codificar carreteres, s'ha establert un dibuixat progressiu de les diferents línies elementals a fi que els enllaços de les carreteres quedin correctament establerts des d'un punt de vista visual. En aquest sentit resulta útil definir per a totes les línies combinades d'una capa de carreteres una línia elemental de base, amb extrems de línia arrodonits, combinada amb les altres línies elementals tenint present que seran dibuixades "per iteracions de línies elementals" en tota la capa. Aquest mode de dibuixat progressiu (primer la primera línia elemental de totes les entitats de la capa, després la segona si n'hi ha, etc) proporciona resultats visuals satisfactoris en la majoria de situacions, tot i que és una mica més lent que el dibuixat no progressiu. És en aquest context que pot ser útil definir un dels "pisos" de línies elementals com a "transparent" (a través del color codificat com a tal) de forma que una carretera pot enllaçar de forma més correcta amb altres segons les combinacions de línies elementals que s'està dissenyant. La idea és sempre tenir present que en el dibuixat progressiu s'aniran dibuixant les components en iteracions des de la línia elemental més "profunda" fins a la més "externa".

La característica de dibuixat progressiu o "per línies elementals" de les línies combinades s'indica a la secció de simbolització del mapa o del REL a través de la clau DibuixatProgressiuLinCombinades=. El valor per defecte és 1, mentre que si s'especifica el valor 0 les línies combinades es dibuixaran de forma individualitzada, seguint l'ordre en què apareixen en el fitxer d'entitats lineals i dibuixant totes les seves línies elementals abans de passar a dibuixar la següent línia combinada.

En la següent figura hi ha tres entitats lineals, una que puja des de la part inferior esquerra, una transversal i una que puja des de la part inferior dreta. La figura superior mostra l'efecte d'indicar que NO es desitja el dibuixat progressiu.

Imatge superior: sense dibuixat progressius. Imatge inferior: amb dibuixat progressiu.

Desaparició de línies massa fines per confusió amb el color de fons

Quan, per motiu d'escala, una línia combinada resulta pintada amb el mateix gruix per a totes les seves línies elementals (típicament això passa quan esdevenen totes de gruix 1 píxel) i, a més, la línia elemental superior és sòlida i pràcticament igual al color del fons de la pantalla (o del paper en impressió), aquesta línia combinada no es visualitza. El motiu d'aquest artefacte és que el color de la darrera línia elemental "tapa" les altres línies elementals i es confon amb el color de fons. A fi d'evitar aquest efecte indesitjable, el MiraMon adopta per a la línia elemental superior el color de l'anterior línia elemental en ordre de dibuixat que no sigui transparent.

El mode automàtic

Com és habitual, si el primer cop que se simbolitza un camp no es disposa de la corresponent taula de simbolització, sol ser més pràctic que el MiraMon faci una primera taula a través de l'activació del mode "Automàtic". En aquest cas el programa actua com sempre, però amb les següents particularitats:

  • Si el camp que indica la simbolització combinada de la línia té un tractament categòric. En aquest cas el MiraMon parteix d'una petita col·lecció interna de simbolització combinada de línies. Si el nombre de símbols necessaris depassa el nombre d'elements d'aquesta petita col·lecció, aquesta es va repetint, però canviant el color de la línia més externa de les línies elementals seguint la tradicional paleta automàtica de tipus categòric. Així, el programa generarà una taula amb tants registres com es derivin de la projecció del camp, més el registre destinat als sensedades, que se simbolitzarà amb una línia simple de color negre i gruix 1.
  • Si el camp que indica la simbolització combinada de la línia té un tractament quantitatiu continu. En aquest cas, donades les propietats disponibles, el color és possiblement la que es desitgi que el MiraMon canviï. Així, el programa generarà una taula en què es prendrà com a patró una línia simbolitzada de manera combinada formada per un halo blanc més una segon halo negre i un color interior que s'assignarà als clàssics colors de la paleta quantitativa continua del MiraMon; el registre destinat als sensedades se simbolitzarà amb una línia simple de color negre i gruix 1. Si prèviament s'ha assignat un nombre de símbols diferent (per exemple perquè s'ha assajat una simbolització categòrica o perquè s'han variat el nombre a través del botó avançades, aquest serà el nombre de registres que assumirà el mode automàtic quantitatiu continu.

Si cal fer retocs a la taula de simbolització automàtica generada es pot desar des de "Fitxer | Desar paleta o taula de simbolització" i efectuar-los amb MiraDades o bé, com és habitual, la persona usuària pot anar canviant la tria que ha fet el MiraMon automàticament fent doble clic a les entrades de la llegenda, tenint plena llibertat per a canviar qualsevol propietat de la línia simbolitzada de manera combinada (colors, gruixos, etc) de la categoria que ha seleccionat.

5. Simbolització en bases de dades provinents d'ARCSDE

El MiraMon permet l'herència de la simbolització des de fitxers REL de capa amb connexió via SDS. A més, s'ha accelerat diversos aspectes de la lectura d'ArcSDE, i entre ells la possibilitat d'interrompre la càrrega d'elements polsant la tecla "Maj.", tal i com es fa per indicar altres interrupcions de dibuixat en el MiraMon. També s'ha inclòs un comptador d'objectes a la barra d'estat per apreciar el procés de recuperació de dades. Per accelerar el procés i poder-lo interrompre eventualment tot fent un nou zoom o desplaçament mentre es recuperen les dades es fa un simbolització senzilla (línies negres, polígons sense pintar, etc) que finalment es repinta amb la simbolització definitiva, un cop el programa ha recuperat tots els elements requerits.

Si es desa la simbolització d'una capa en ArcSDE, aquesta es desa en el REL des del qual s'ha obert la capa, o en el temporal si aquesta no s'ha obert a partir d'un REL.

6. Modificació d'una taula de simbolització

Si una taula de simbolització (paleta de color, de trames, etc) ha estat modificada des de la llegenda o des de la caixa "Avançades", en la caixa de simbolització apareix, davant del nom, la paraula [Modificada]. D'aquesta manera si es prem "D'acord" el programa entén que es vol mantenir la paleta amb els colors modificats (en comptes de fer com anteriorment, que mostrava un missatge dient que es perdrien els canvis i suggeria prémer "Tancar"). Tanmateix, com que també és necessari que hi hagi una via per a recarregar els colors de la paleta original, el que cal fer ara és prémer el botó d'exploració i tornar-la a seleccionar (desapareixerà la marca [Modificada]) i es procedirà a canviar la paleta anterior (modificada) per la nova (rellegida).


Les taules de simbolització del MiraMon depenen del tipus d'element a simbolitzar:

1. Taules de simbolització de color

Una taula de simbolització de color defineix, per a un nombre determinat d'entrades (registres), el color associat a cadascuna d'elles. Les taules de color poden representar un nombre màxim de colors de 65536 donat que internament, i seguint les característiques de Windows, el MiraMon treballa amb aquest límit. Tanmateix, moltes targetes gràfiques i impressores no suporten més de 256 colors, per la qual cosa és recomanable no excedir aquest valor. El nombre màxim de nivells per a cada component RGB és de 256.

A partir de la versió 4.0 del MiraMon, les taules de simbolització de color tenen el format explicat en l'apartat de conceptes generals de les taules de simbolització. No obstant, el MiraMon continua suportant els diferents formats per a les paletes de les versions anteriors del MiraMon en funció dels nivells màxims per a cada component RGB: P25 (0,255), PAL (0,63) i P65 (0,65535). Per a més informació, es pot consultar al final del present apartat: Taules de simbolització de color anteriors a la versió 4.0 del MiraMon.

Les taules de simbolització de color són aplicables per a qualsevol cas d'indicació de color: color de ràster, color de línia (arcs, vores de polígons i línies de vectors no estructurats), color d'interior de polígon, color de trames, etc.

1.1 Taules de simbolització de color en fitxers ràster

Quan obriu un fitxer ràster, el MiraMon demana la taula de simbolització de color a utilitzar. Cada cop que s'inicia una sessió, el MiraMon ofereix unes taules de simbolització (es pot consultar Directori de lectura de fitxers), entre les quals se n'inclouen de nivell de grisos (Cgris16, Cgris256, etc) de models digitals d'elevacions i altres variables contínues (CMDE16, CMDE256, CNDVI256, Combr256, etc), de mapes categòrics (Ctematic, Cdigi256, etc). Es pot triar, doncs, alguna d'aquestes taules de simbolització de color, o bé d'altres que s'hagin creat en ocasions anteriors.

Els ràsters (no les composicions RGB, la simbolització de les quals té una natura diferent) disposen d'una caixa de simbolització, de forma que es pot indicar color constant (que omplirà tot el ràster excepte les eventuals zones on hi hagi sensedades, que es tractarà de forma transparent) o a través d'una paleta de color. En aquest darrer cas es pot accedir a la caixa d'opcions avançades, que en el supòsit de tractament quantitatiu de les dades dels píxels permet indicar el nombre de colors a la paleta, el mínim i màxim desitjats o el tipus d'assignació (directa, lineal, logarítmica, etc). Com sempre, el MiraMon continua triant els paràmetres més adequats amb una heurística interna en funció del tipus de ràster, les metadades, etc, llevat que el fitxer ja indiqui, a través del seu REL o a través del mapa que l'obri, quines són les opcions desitjades; tot i que l'heurística del MiraMon s'ha demostrat encertada durant molts anys, és també cert que en algunes circumstàncies pot ser necessari aplicar diferents estratègies de simbolització.

En el cas de les composicions RGB, la caixa de simbolització permet indicar quins píxels han de mostrar-se transparents (cap, els sensedades, els blancs, etc). Des de les respectives caixes de simbolització de ràsters (incloent JPEG2000, BMP, etc) i de composicions RGB és possible:

  • Indicar el percentatge de transparència de la capa. Aquest percentatge és compatible amb la utilització de colors totalment transparents a la paleta.
  • Invocar la caixa de millorament d'imatge, també per als dos tipus de ràsters.
  • Indicar el rang d'escales entre els quals la capa serà visible.
  • Accedir a l'edició avançada de la simbolització als ràsters categòrics amb més de 256 categories, i ja no només edició puntual de colors concrets a través de doble clic a la categoria corresponent de la llegenda.

S'ha implementat el color transparent en les taules de simbolització dels ràsters de forma simètrica a la dels vectors, tant per a combinacions RGB com per a ràsters amb paleta (cas també suportat per als ràsters de més de 256 categories). La indicació interactiva d'un color transparent es pot fer a través de la llegenda, fent doble clic al símbol corresponent o, també, des de la caixa de simbolització per a fitxers de 24 bits (tant en combinacions RGB com en JPEG, JPEG2000, etc). La seva utilització en una capa fa que el seu dibuixat sigui una mica més lent (MiraMon ha d'analitzar la presència de píxels transparents en aquella vista i, en cas afirmatiu, demanar al Windows que faci el tipus de visualització, més lent, que permet, transparència total en alguns punts).

Les propietats de la transparència total són també totalment simètriques a les dels vectors: s'indica per les intensitats RGB (-1,-1,-1) a la taula de simbolització, pot aplicar-se a qualsevol símbol, inclòs el sensedades, i a la llegenda impresa se simbolitza transparent, mentre que a la llegenda en pantalla se simbolitza amb el color de fons que la persona usuària ha triat per al MiraMon (menú "Visualització"); la indicació interactiva d'un color transparent es pot fer des de la llegenda fent doble clic al símbol corresponent a la llegenda, cas també suportat per als ràsters de tipus integer o long associats a una llegenda (és a dir, ràsters amb més de 256 categories). També s'ha donat suport a la indicació de transparència en les combinacions RGB; en aquest cas s'indica amb la clau Color_Transparent= de la secció [RASTER_RGB_#] dels fitxers MMM; de moment la clau pot prendre els valors "3xsensedades", "sensedades", "Blanc" i "Negre", que indiquen, respectivament, que els píxels transparents seran aquells amb els 3 valors RGB sensedades, amb algun dels valors RGB sensedades, totalment blancs o totalment negres; apart d'indicar-ho via aquesta clau dels fitxers MMM, la transparència en fitxers de 24 bits (tant en combinacions RGB com en JPEG, JPEG2000, etc, de 24 bits) es pot indicar també a través de la caixa de diàleg que apareix en prémer "Visualització" des del gestor de capes o des de la llegenda. No s'han d'activar colors o combinacions RGB transparents innecessàriament ja que, com s'ha dit, la seva utilització en una capa fa que en Windows el seu dibuixat sigui una mica més lent; en cas necessari, dels 4 modes, el ràpid és el "sensedades"; d'altra banda, el mode 3xsensedades és purament experimental perquè pot crear efectes visuals estranys ja que el píxel amb valor sensedades en una banda es prepara amb un valor especial (típicament 255) per a preparar l'efecte de transparència però si altres components RGB del píxel no resulten ser sensedades haurà perdut el seu valor original.

Aquesta propietat dels fitxers JPEG de presentar zones transparents en píxels que contenen algun sensedades (o forçant a fer-ho només quan siguin sensedades les 3 components RGB) es permet que s'escrigui i es llegeixi també als MMM. Amb aquesta millora també les especificacions de transparència en cas de color blanc, negre, etc, passen a ser escrites/llegides als MMM. Cal tenir present, però, que per les especials característiques de la compressió amb pèrdua, una zona sensedades en un RGB compost de 3 fitxers IMG pot presentar, quan es converteix a JPEG, una petita franja de transició cromàtica que faci que alguns píxels sensedades presentin valors "similars" però no idèntics (per exemple si eren 255 ara siguin 253) i, per tant, la transparència no s'apliqui de forma totalment perfecta a la zona que era sensedades en el fitxer sense compressió amb pèrdua original.



El color dels nuclis urbans s'ha definit com a transparent i, per tant, el ràster d'usos del sòl deixa veure, en aquestes zones, l'ortofoto subjacent.

Se suporta, en ràsters multibanda, l'ús simultani de les seccions [COLOR_TEXT] (com a indicació genèrica de la simbolització a usar per a les bandes que no tenen una secció específica de simbolització) i de les seccions [COLOR_TEXT:NOM_BANDA] (com a indicació de la simbolització específica de la banda) en el mateix REL. Semblantment se suporta pel cas de la secció [VISU_LLEGENDA]. D'aquesta manera un ràster multibanda pot tenir ara una simbolització general per a totes les bandes, però també una d'específica per a les bandes que convingui.

1.2 Taules de simbolització de color en fitxers vectorials

En el cas de fitxers vectorials, la simbolització de color és aplicable a les línies, a l'interior dels polígons, a les trames, etc. Cada cop que definiu un color, el MiraMon permet triar un color constant per a tots els objectes o bé indicat per un camp de qualsevol taula de la base de dades.

  • Color constant: per defecte s'assigna un color el qual pot ser modificat prement el botó . Si es decideix canviar el color per defecte, apareixerà la caixa de diàleg Colors on es triarà el color. Aquest es mantindrà independentment de les paletes carregades en cada moment i del tipus d'atribut del fitxer (cadena de text o numèric). La finestra d'edició de color permet triar qualsevol color d'entre 16 milions de colors possibles. Tanmateix, existeixen 48 colors bàsics predefinits pel sistema (Windows) i també fins a 16 colors personalitzats que seran conservats fins a la fi de la sessió. La definició dels colors es pot fer mitjançant valors RGB, HSL o gràficament.
  • Color indicat per un camp de la base de dades: si es decideix visualitzar els colors dels objectes de manera indicada, s'haurà de definir el camp de qualsevol taula de la base de dades que indica el color (si es tracta d'un fitxer vectorial no estructurat, el camp que indica el color serà l'"Atribut") i la taula de simbolització que es desitgi. Si no es tria cap taula de simbolització, el MiraMon acolorirà els objectes de manera automàtica. La selecció del camp de la taula que es vol utilitzar com a índex de color es pot fer sobre una llista de camps que apareixerà en una caixa de diàleg. En aquesta llista només es mostren els camps que en el Gestor de Metadades han estat marcats com a simbolitzables (si es vol un llistat de tots els camps, cal activar l'opció "Mostrar tots els camps").

1.3 Taules de simbolització de color anteriors a la versió 4.0 del MiraMon

Per a versions anteriors a la 4.0, el MiraMon permetia diferents formats per a les paletes en funció dels nivells màxims per a cada component RGB (P25, PAL, P65). Important: cal no confondre aquests valors amb el nombre de colors que pot contenir la paleta. Tot i que a partir de la versió 4.0 del MiraMon, es crea un nou format per a les taules de color (DBF) que permet superar certes limitacions dels formats antics, aquests se segueixen suportant.

L'antiga taula de simbolització de color del MiraMon es defineix en un fitxer de text de 4 columnes i amb tantes línies com colors defineix la paleta:

comptador valor_R valor_G valor_B
0 0 0 0
1 0 97 0
2 0 162 0
3 0 255 0
4 255 255 0
5 255 210 0
6 255 182 0
7 255 138 0
8 255 113 0
9 186 85 0
10 182 125 0
11 186 162 0
12 121 101 0
13 121 65 0
14 243 243 0
15 255 178 0

El valor del comptador s'ignora i pot ser utilitzat per l'usuari en la manera que li convingui, ja que la primera columna actua com un simple numerador de línies del fitxer (des del zero), de valor auxiliar quan s'editen els fitxers amb editors de text sense numeració de línies (com el Bloc de notes de Windows) però sense cap valor per al MiraMon, ja que el programa utilitza com a índex de color la línia (des del zero) en què es defineix el color.

En funció del format de l'antiga taula de simbolització de color, les components RGB poden tenir diferent rang de valors. En el MiraMon, existeixen tres formats antics de taules de simbolització de color en funció d'aquest rang. és a dir, tot i que la taula de simbolització de color pot tenir com a màxim 256 colors de visualització, el rang de les components RGB que defineixen cadascun dels colors de visualització pot arribar a tenir 65535 nivells. En concret, els tres formats antics de taules de colors, i el rang de valors de cada component RGB es mostren a continuació:

- PAL: 64 nivells per component RGB [0,63]

- P25: 256 nivells per component RGB [0,255]

- P65: 65536 nivells per component RGB [0,65535]

Les antigues taules de simbolització presenten certes limitacions que les fan menys operatives que les actuals taules de simbolització. Entre aquestes limitacions destaca la inexistència de registre per a sensedades. En aquests casos, no hi ha un tractament especial dels sensedades (a diferència del què succeeix en les actuals taules de simbolització).

Una altra limitació, també molt important, és que en les antigues taules de simbolització de color, el camp que indica el color només pot ser numèric. Això implica la necessitat de definir tesaurus que vinculin els camps categòrics (que realment es vol indexar) amb valors numèrics que puguin ser interpretats per la taula de simbolització.

Per tot plegat s'aconsella no utilitzar els formats antics i optar pel nou format tabular.

2. Taules de simbolització de trames

Una taula de simbolització de trames defineix, per a un nombre determinat d'entrades, la trama associada a cadascuna d'elles. Les taules de trames poden representar un nombre màxim de 46 símbols diferents (inclou el símbol "sense trama").

Les taules de simbolització de trames són aplicables a vectors estructurats i a vectors no estructurats de tipus polígon. El MiraMon per defecte activa la simbolització sense trama, de manera que l'interior del polígon queda omplert segons s'hagi triat en l'opció del color per omplir l'interior del polígon (no omplir, color constant o color indicat).

Si es desitja activar l'opció trama, cal prémer el botó "Trames..." de la caixa de diàleg Visualització de vectors polígon i s'accedeix a la caixa de diàleg Trames. Cada cop que es defineix una trama, el MiraMon permet triar una trama constant per a tots els objectes o bé una indicada per un camp de qualsevol taula de la base de dades.

  • Trama constant: les trames són línies de color constant o indicat (tal com s'ha explicat a Taules de simbolització de color) sobre un fons transparent, la qual cosa permet que la trama es superposi al color de fons del polígon (si en té). Per defecte, l'estil de trama constant assignat pel MiraMon és la línia horitzontal. Si es vol modificar la trama, cal prémer el botó dels tres punts i apareixerà una caixa de diàleg amb els diferents estils de trames que es pot utilitzar.

  • Trama indicada: si es decideix visualitzar l'estil de les trames de manera indicada, s'haurà de definir el camp de la taula de la base de dades que la indica (si es tracta d'un fitxer vectorial no estructurat, el camp que indica la trama serà l'"Atribut") i la taula de simbolització que es desitja. Cal recordar que la llista de camps que apareixen per a indicar la trama només mostra aquells que en el Gestor de Metadades han estat marcats com a simbolitzables. Per a veure tots els camps, cal prémer "Mostrar tots els camps". Si no es tria cap taula de simbolització, el MiraMon assignarà les trames de manera automàtica. Si es vol crear una nova taula de simbolització de trames, cal recordar els diferents estils de trames es defineixen en el camp TIPUSTRAMA amb els caràcters "I", "-", "+", "\", etc. Es pot consultar els símbols utilitzats per a cada trama a "Tipus de Trama", quan es tria l'opció de "trama constant" a la finestra de diàleg de Trames.

3. Taules de simbolització de fonts

Tradicionalment una taula de simbolització de fonts defineix el tipus de font associat als fitxers estructurats de tipus PUNT. No obstant, a partir de la versió 6 s'introdueix la possibilitat de fer aparèixer textos en entitats de tipus línia (seguint la seva direcció) i polígon (ubicant-los al seu interior), podent la persona usuària triar la majoria de les anteriors propietats, excepte les referides a la rotació del text i a la rotació dels caràcters, que són calculades pel programa en el primer cas per a cada entitat, i que no solen ser necessàries en el segon cas. Com és propi en un Sistema d'Informació Geogràfica, els textos que apareixen corresponen a propietats de l'entitat, és a dir la persona usuària tria un camp de la base de dades (de qualsevol de les taules que la formen) i els continguts d'aquest camp es mostren en forma de textos al llarg de la línia o dintre el polígon. A més, es permet que els diferents objectes d'una mateixa capa de punts apareguin simbolitzats de forma diferent. Tanmateix, donada l'especial complexitat de les fonts (definides, com s'ha dit, per un conjunt extens de propietats), ha semblat convenient anar una mica més enllà de l'esquema clàssic aplicat a colors, trames, etc., i que com és sabut es basa en les possibilitats de "sense", "constant" i "indicat per un camp de la base de dades" (amb les sofisticacions de tractament categòric o quantitatiu i, en aquest darrer cas, amb escalat lineal, logarítmic, etc).

Aquestes extensions no trenquen l'esquema unificat a què s'ha anat tendint en la simbolització del MiraMon, sinó que n'amplien les possibilitats en un cas, el de les fonts, que necessita recursos extra en la representació sobre el mapa i a la llegenda.

La simbolització de fonts del MiraMon permet que algunes propietats depenguin d'un camp de la base de dades i d'una taula de simbolització (per exemple, el tipus de font) mentre que d'altres propietats puguin ser tractades individualment en cada entitat (per exemple: l'alçada de la font, la inclinació i rotació dels caràcters, etc.). Amb aquests paràmetres es fa possible representar els textos amb una qualitat molt satisfactòria, tal i com es pot observar en les tres figures que venen a continuació, extretes de la BT-5M de l'Institut Cartogràfic de Catalunya en format vectorial del MiraMon.

Així doncs, la simbolització de textos està molt consolidada, permetent colors, grandàries en unitats mapa o tipogràfiques, característiques a nivell d'objecte, de família d'objectes i de capa, etc. Moltes d'aquestes sofisticacions han estat aplicades amb èxit i estabilitat als milers de fulls topogràfics de l'Institut Cartogràfic de Catalunya distribuïts en format MiraMon a escales 1:5000, 1:25000 i 1:50000.

3.1 Nivells de simbolització de fonts

La definició de la simbolització de textos pot fer-se a 4 nivells:

  • 1. Font estàndard del Windows: per defecte, el MiraMon activa la casella "Mostrar textos" de la caixa de diàleg Visualització de vectors PUNT, que permet visualitzar el text del camp de la base de dades que es tria (atribut, identificador gràfic intern, etc). Aquest text es mostra a l'angle superior dret del punt, amb la font estàndard de Windows, que correspon a una font sense opcions de format, el que implica una màxima velocitat en la visualització.
  • 2. Font constant per a tots els textos de la capa: correspon, per defecte, a tipus "Arial" mida "10". No obstant, si es prem el botó "Canviar font..." s'accedeix a la caixa de diàleg "Definir font" des de la qual es poden modificar diversos aspectes de la font:
    • Tipus de lletra: Si es prem el botó "Font..." s'accedeix a la caixa de diàleg Tipus de lletra, des d'on es pot modificar el tipus de lletra (Arial, Times New Roman, Tahoma, etc), l'estil de la lletra (Normal, Cursiva, etc.), la mida de la lletra (mida 10, 20, etc.), el color de la lletra i els efectes (ratllat, subratllat, etc).
    • Color de fons: La caixa de diàleg Definir font permet triar diverses opcions de color de fons de la font. Per defecte el MiraMon activa l'opció "Cap color de fons", si bé també es pot triar un color "Opac" o bé que el fons sigui amb un "Halo" al voltant. Per aquestes dues darreres opcions, es pot triar el color d'entre els 48 colors bàsics predefinits pel sistema (Windows) o bé es pot triar-ne de personalitzats (fins a 16 colors personalitzats seran conservats fins a la fi de la sessió) d'entre els 16 milions de colors possibles. La definició dels colors es pot fer mitjançant valors RGB, HLS o gràficament.
    • Mida de la lletra: permet definir la mida de la lletra.
    • Unitats de la mida de la lletra: La mida de la lletra es pot expressar en unitats mapa (m o la unitat que correspongui) o bé en punts tipogràfics convencionals. Si es tria unitats mapa, la mida de la font canviarà d'acord amb el canvi d'escala. En canvi, si es tria la mida en punts tipogràfics, la font es mantindrà constant independentment de l'escala de visualització.
    • Inclinació de la font: permet inclinar un text respecte l'horitzontal. El rang d'inclinació permès és d'entre 0 i 360º.
    • Orientació de cada caràcter: permet que els caràcters que formen un text s'inclinin sobre l'horitzontal, independentment de la inclinació de tot el text.
    • Espaiat extra entre caràcters: permet definir una separació entre els caràcters que conformen el text.
    • Estirament extra de la font: permet augmentar l'amplada de cada font, sense que variï l'alçada.
    • Desplaçament X Y: permet modificar el punt d'inserció del text (per defecte es mostra a l'angle superior dret del punt) i determinar les unitats de desplaçament, bé sigui en punts tipogràfics com en unitats mapa.
    • Evitar solapaments: permet evitar solapaments de textos. Com és natural, això és una petició, però en cas de, per exemple, molta densitat de textos pot no ser físicament possible.
    • En l'exemple següent es mostra en primer lloc una text amb halo de fons. A la segona figura (d'esquerre a dreta) s'ha aplicat una inclinació de la font de 15º. A la tercera figura s'ha aplicat, sense cap inclinació de font, una inclinació de cada caràcter de 15º. A la figura inferior esquerra s'ha aplicat un espaiat extra entre caràcters de 10 punts tipogràfics i a la figura inferior dreta s'ha aplicat un estirament extra de la font de 8.

  • 3. Font per objecte, indicada per un camp de la base de dades: correspon al cas simètric a "per objecte" conegut d'altres tipus de simbolització (colors, trames, etc). Les fonts dels textos no estan dotades de simbolització particularitzada per cada una de les propietats que les controlen atès que en el cas de les fonts no es habitual, per a una mateixa capa, canviar el color en funció d'un camp de la base de dades i, alhora, canviar també la mida en funció d'un altre camp de la base de dades, etc. El tipus de tractament donat a les fonts en cartografia obeeix més a un tractament "en bloc", de forma que un cert tipus d'entitat (per exemple un nom de municipi de més d'un milió d'habitants) es vol amb una font que, "en bloc", es caracteritza per un cert tipus de lletra, mida, color, etc. D'altra banda, fonts amb estils ben diferents (per exemple blaves) presents en el mateix mapa seran típicament en una altra capa (per exemple de rius). És per això que el camp de la taula de simbolització que determina com es veurà una font (anomenat FONT i de tipus 'C' en aquest tipus de simbolització) inclou tots els aspectes de visualització (en l'apartat d'especificacions es descriuen les propietats de simbolització que es poden definir). Tanmateix, i com que aquests aspectes estan perfectament documentats a l'apartat anterior, una persona usuària que requereixi un tractament especial de les fonts com a resultat de la interacció de més d'un camp de la base de dades sempre pot escriure una sentència SQL que ompli adequadament el camp en funció dels continguts dels camps implicats.

    Addicionalment, la taula de simbolització contindrà un camp anomenat TEXT_FONT, de tipus 'C', per al text a usar per a exemplificar el tipus de font a la llegenda. Per exemple, un "TEXT_FONT" com "Roma" seria escrit amb la font corresponent al camp FONT del mateix registre i al costat s'hi llegiria, amb la font normal de la llegenda, la descripció "Ciutat de més d'un milió d'habitants" situada en el camp DESCRIPCIO.

  • 4. Font per entitat, tipificada en una taula de simbolització: en alguns casos pot ser necessari indicar propietats específiques per a una certa entitat (per a un cert punt), com ara la inclinació. Aquestes propietats no es mostren a la llegenda per tal com no constitueixen una propietat tipificada, sinó particular de cada entitat.
  • Aquestes propietats no es desen en el camp font sinó en un camp FONT_ENTIT, de tipus 'C' que contindrà, en el mateix format de la cadena descrita a l'apartat d'especificacions, les propietats de font de l'entitat. Ara per ara, aquest camp està ubicat a la taula principal, però en un futur podria establir-se en qualsevol altra taula de la base de dades o fins i tot en una taula externa, vinculable a través del camp que conté l'identificador d'entitat (o l'identificador gràfic en el seu defecte). Quan el MiraMon crea el camp ho fa amb una amplada de 150 caràcters per garantir que qualsevol expressió d'especificacions de font per a l'entitat, per complexa que sigui, hi tingui cabuda; tanmateix, es pot retallar convenientment l'amplada del camp si només s'usen algunes propietats (per exemple si només s'indica negreta (/B) amb una amplada de 2 caràcters seria suficient).

    La individualització de propietats de la font per a cada entitat només es pot realitzar sobre fitxers en format REL4. Cal convertir la capa a REL4 usant ConvREL si cal aquesta propietat.

    Aspecte de la taula principal (T.dbf) amb els camps implicats en la simbolització dels punts.

    A través del grup "Propietats tractades individualment per a cada entitat" és possible indicar quines propietats es vol individualitzar a nivell de cada entitat. Si se selecciona:

    • Cap: s'aplicarà la font (constant per capa o per objecte) que correspongui. Tots els botons del grup quedaran en gris. En el fitxer REL/MMM s'indica FontPerEntitat=0 (FONT_PER_GRUP en el codi intern).
    • Totes: quedarà en gris tot el grup "Font a utilitzar" i cada punt tindrà la seva pròpia font (internament el programa ho etiquetarà com a constant). En aquest cas la llegenda utilitzarà un text triat pel propi programa d'entre els representats a la capa. En el fitxer REL/MMM s'indica FontPerEntitat=1 (FONT_PER_ENTITAT en el codi intern).
    • Algunes: es pot seleccionar quines propietats es desaran al camp FONT_ENTIT. La llegenda tindrà l'aspecte que pertoqui en funció de la tria en el grup "Font a utilitzar" (en cas que s'individualitzi alguna propietat molt bàsica com el nom de la font el MiraMon també prendrà una decisió entre els textos de la capa). En el fitxer REL/MMM s'indica FontPerEntitat=2 (FONT_MIXTA en el codi intern) seguit de dos punts (':') i de les lletres indicatives de les propietats a tractar individualment per a cada entitat, i que poden ser les següents, que corresponen als botons d'activació del grup inferior de la caixa mostrada anteriorment:
      • /N: Nom: "Arial", etc.
        /H: Alçada i unitats: També incorpora unitats_mapa i alcada_font
        /C: Color: color_font
        /K: Color de fons i aspecte: opac, halo. Incorpora ColorFons i RectangleOpac
        /B: Negreta
        /I: Cursiva
        /U: Subratllada
        /S: Ratllada
        /E: Inclinació i rotació de caràcters. Incorpora lfEscapement i lfOrientation
        /i: Espaiat extra entre caràcters
        /x: Estirament extra de la font
        /POS: Posició respecte al punt d'inserció. Incorpora PosicioText, desp i DespUnitatsMapa

      Per exemple, FontPerEntitat=2:/E/POS indica que la inclinació i rotació dels caràcters, així com la posició (centrat, etc) i el desplaçament es llegiran del camp FONT_ENTIT en comptes d'emprar allò indicar en la font constant (quan tota la capa se simbolitza igual) o en la taula de simbolització (quan la font s'indica per un camp de la base de dades).

Especificació de les propietats d'una font en les taules de simbolització del MiraMon dins del camp FONT / FONT_ENTIT (per exemple "/NArial/H12/B")

Tal i com es va establir en la versió 4, una font s'especifica a través d'una cadena de text que pot ser en un fitxer REL o MMM si aplica a tota la capa, o en un camp d'una taula de simbolització de fonts, etc. El format d'aquesta cadena és constituït per una sèrie d'etiquetes que fan referència a les diferents propietats de la font. Cada propietat s'especifica amb una barra de dividir (/) seguida d'una lletra característica (sensible al cas: no s'ha d'usar indistintament majúscules i minúscules) i, a continuació, si s'escau, el valor que pren la propietat. El llistat de propietats suportades és el següent:

    A. Propietats amb valor obligatori (si s'indiquen, han d'anar seguides d'un valor)

    • Nom de la font (FaceName): /N. Exemple: /NArial. Si no s'indica, s'aplica Arial.
    • Alçada de la font (Height): /H. S'entén que és en unitats tipogràfiques excepte que s'indiqui expressament que és en unitats mapa a través de /M. Exemples: /H12 (alçada 12 punts); /H200.5/M (alçada 200.5 unitats mapa, típicament metres). Si no s'indica, s'aplica una font de 10 punts.
    • Color de la font (Color): /C. A continuació s'especifiquen, separades per comes, les intensitats R,G,B. Exemple: /C255,0,0 (color vermell). Si no s'indica, s'aplica NEGRE.
    • Color de fons de la font (Background): /K. El color s'especifica com en el cas /C. Si no s'indica, s'aplica BLANC. Si s'indica /h (en minúscula!) el color de fons s'aplica a un halo i no a tot el rectangle de fons.
    • Inclinació de la font (Escapement): /E. A continuació s'especifica, en decigraus en sentit antihorari, la inclinació. Exemples: /E450 (45°), /E225 (22.5°). Si no s'indica, s'aplica 0 (text horitzontal). Aquesta propietat no aplica en el cas dels textos dinàmics que etiqueten línies.
    • Rotació de cada caràcter (Orientation): /O. A continuació s'especifica, en decigraus en sentit antihorari, la rotació. Exemples: /O450 (45°), /O225 (22.5°). Si no s'indica, s'aplica 0 (lletres sense cap rotació). Típicament cal escriure el mateix valor que a la inclinació. No funciona en les versions 9x del Windows. Aquesta propietat no aplica en el cas dels textos dinàmics que etiqueten línies.
    • Espaiat extra entre els caràcters de la font (InterCharSpacing): /i. A continuació s'especifica, en punts tipogràfics, l'espaiat extra entre els caràcters. Exemple /i12. Si no s'indica, s'aplica 0 (sense espaiat extra).
    • Estirament horitzontal extra dels caràcters de la font (Width): /x. A continuació s'especifica l'estirament horitzontal dels caràcters escrits. Exemple: /x9. Si no s'indica s'aplica 0, que vol dir estàndard; com a referència, en una font Arial d'alçada 10, un valor de 6 dóna el resultat estàndard i valors més petits comprimeixen la font mentre que valors més grans l'estiren.
    • Desplaçament respecte al punt d'inserció: /X i /Y: A continuació s'especifica la distància de l'inici del text al punt d'inserció. La distància s'expressa, per defecte, en unitats píxel; si es desitja expressar-la en unitats mapa cal indicar /m; en cas que estigui en unitats píxel, el desplaçament positiu és el clàssic en ràsters (cap a la dreta i cap avall), mentre que si és en unitats mapa segueix el criteri cartesià habitual (cap a la dreta i cap amunt). Exemple: /X25.5 /Y33.7 /m. Si no s'indica, s'aplica 0 (el text comença a la coordenada XY del punt); és admissible indicar només una de les dues propietats, cas en el qual s'aplica 0 a la no especificada. Es pot consultar també la propietat "/POS", més endavant. Cal fer notar que la propietat "/X" no indica el mateix que "/x".

    B. Propietats amb valor optatiu

    • Gruix de la font (Weight): /B. Pot anar seguit d'un valor enter si es desitja un valor diferent de l'estàndard (valor 700, equivalent a negreta). Exemples: /B (negreta estàndard); /B400 (font normal, equivalent a no indicar la propietat /B); /B100 (font molt fina); /B900 (font molt negra). Aquests valors especials no es poden incorporar des dels menús ja que es considera que la persona usuària estàndard no ho necessitarà, però es poden escriure manualment o amb programes a la cadena per a emfasitzar si convé.

    C. Propietats activables

    • Font cursiva (Italic): /. Exemple: /I
    • Font subratllada (Underline): /U. Exemple: /U
    • Font ratllada (StrikeOut): /S. Exemple: /S

    D. Altres propietats

    Addicionalment, i tot i que no és una característica de la font en si, també es poden afegir les següents propietats, en aquest cas precedides d'una etiqueta de 3 lletres:

    • Alineació: La indicació de text alineat a la dreta, centrat o a l'esquerra s'aconsegueix amb les indicacions de Posició (es pot consultar el punt següent) NW, N i NE. Cal fer notar que les indicacions E, C i W en realitat no només alineen sinó que també baixen el text de manera que la línia horitzontal que passa pel punt d'inserció travessa aproximadament pel mig les lletres majúscules i nombres.
    • Posició del text respecte al punt d'inserció: /POS. A continuació s'especifica, en base als 8 punts cardinals (N, S, E, W, NE, SE, NW, SW) o al centre (C), la posició (s'entén que aquí els punts cardinals simplement s'usen per a indicar fàcilment la idea habitual que N és a la part superior, S a la inferior, etc, sense que tingui res a veure amb l'orientació sobre la Terra). Les posicions NE, N i NW escriuen el text sobre la línia horitzontal que passa el punt d'inserció alineant-lo convenientment a la dreta, centrat o a l'esquerra. Les posicions E, C i W alineen el text com abans però el baixen de forma que la línia horitzontal que passa pel punt d'inserció travessa aproximadament pel mig les lletres majúscules i nombres. Les posicions SW, S i SE alineen el text com abans però el baixen encara més, de forma que la línia horitzontal que passa pel punt d'inserció queda a la part superior de la caixa del text (la zona rectangular de color que es pot apreciar si es demana que el color de fons de la font, background, sigui opac). Si no s'indica posició, s'escriu el text a l'angle NE del punt. Es pot consultar també les propietats "/X" i "/Y", prèviament presentades. Aquesta propietat no aplica en el cas dels textos dinàmics que etiqueten línies o polígons ja que el procés dinàmic posiciona els caràcters convenientment.

    A més, quan s'indica la grandària en unitats tipogràfiques, la representació en pantalla és exactament igual a la del paper (sempre i quan es tingui ben configurada la indicació de la grandària del monitor). Nota: Tota la notació descrita en aquest apartat pot usar-se, també, en la descripció de la simbolització de textos en fitxers .rel i .mmm.

3.2 Etiquetatge dinàmic

Etiquetatge dinàmic dels fitxers d'arcs i línies

Es permet l'etiquetatge dinàmic dels arcs i dels VEC de línies. Així, qualsevol camp de qualsevol taula de la base de dades associada a un fitxer d'arcs o atribut d'un fitxer VEC de línies pot ser mostrat com un text discorrent al costat de l'arc. Aquesta funcionalitat permet establir el rang d'escales dintre el qual mostrar els textos de les línies (independentment del rang d'escales de la capa en si i molt recomanable per evitar un excés de textos en vistes generals), així com censurar els textos d'una longitud excessiva en relació al seu arc/línia corresponent; aquesta darrera funcionalitat permet indicar valors com ara 0% (els textos sempre es dibuixaran independentment de la longitud de l'arc), 100% (els textos es dibuixaran quan l'arc sigui com a mínim tan llarg com el text), 200% (els textos només es dibuixar si l'arc és com a mínim el doble de llarg que el text), etc; aquest comportament permet evitar l'etiquetatge d'arcs massa curts i l'obtenció de textos solapats.

També és possible establir una distància a l'arc, per sobre o per sota, i fins i tot establir el text "travessat" per la línia, com és tradició en les corbes de nivell; aquest paràmetre també s'indica en %: un valor 0 indica que el text se situa per sobre de la línia, un 50% indica que es deixa mitja caixa de text extra separant-lo de la línia, 100% indica que es deixa l'espai corresponent a una línia de text entre el text i la línia, etc; si s'indica un desplaçament negatiu el text es desplaça cap avall: si el desplaçament és del -50% (mitja caixa de text) el text queda "travessat" per la línia, si és del -100% s'ubica enterament sota la línia, etc.

El text s'orienta de la forma intuïtiva segons l'orientació de la pròpia línia i, en cas de ser prop de la vora, valora si el canvia de banda de l'arc per a poder fer-lo visible. L'algorisme estudia els diferents segments de la línia i tria el més llarg com a representatiu per a orientar el text, però si els segments són molt curts generalitza paulatinament la línia per trobar una direcció satisfactòria. En cada intent pondera positivament la centralitat del segment en el context del seu arc així com la longitud del segment triat. Si un arc entra i surt del camp de visualització o d'impressió, aquest s'etiqueta tots els cops que aparegui (llevat que algun dels cops ocupi massa poc i sigui censurat per algun dels altres paràmetres).

És possible indicar "Evitar solapaments" per tal que el programa intenti evitar col·lisions entre les etiquetes. El text es pot simbolitzar utilitzant la pràctica totalitat de propietats que apliquen als punts, amb l'excepció de la inclinació i orientació i el desplaçament XY, que no tenen sentit en les línies perquè es decideixen en funció de l'arc/línia a etiquetar; en particular, cal recordar que el text es pot establir en unitats tipogràfiques o en unitats mapa (es farà més petit en allunyar-se).

Etiquetatge dinàmic dels fitxers de polígons

Es permet l'etiquetatge dinàmic dels fitxers de polígons (tant POL com VEC). Així, qualsevol camp de qualsevol taula de la base de dades associada a un fitxer POL o atribut d'un fitxer VEC de polígons pot ser mostrat com un text a dintre del polígon. Aquesta funcionalitat permet establir el rang d'escales dintre el qual mostrar els textos als polígons (independentment del rang d'escales de la capa en si i molt recomanable per evitar un excés de textos en vistes generals), així com censurar els textos d'una àrea excessiva en relació al seu polígon corresponent; aquesta darrera funcionalitat permet indicar valors com ara 0% (els textos sempre es dibuixaran independentment de l'àrea del polígon), 100% (els textos es dibuixaran quan el polígon ocupi com a mínim tanta superfície com el text), 200% (els textos només es dibuixar si el polígon és com a mínim el doble en superfície al text), etc; aquest comportament permet evitar l'etiquetatge de polígons massa petits i l'obtenció de textos solapats.

L'heurística de col·locació de les etiquetes segueix un sofisticat sistema les principals característiques del qual són:

  • S'analitza un gran nombre de posicions candidates, basades en la divisió de l'envolupant en zones de la mida de l'etiqueta que s'intenta ubicar dintre el polígon i cada posició es puntua afavorint la seva centralitat al polígon i la seva llunyania de les vores interiors (forats) o exteriors del polígon. Si se selecciona l'opció "Anàlisi completa" aquesta anàlisi és exhaustiva i finalment es tria la posició de l'etiqueta que ha obtingut més bona puntuació, mentre que si no es marca aquesta opció, quan el programa troba una situació raonablement satisfactòria atura la cerca de la posició de l'etiqueta, cosa que accelera considerablement el procés de dibuixat.
  • Es permet fer una anàlisi extra que permet buscar alternatives en la posició horitzontal de l'etiqueta per evitar resultats poc satisfactoris per culpa d'interseccions amb la vora en zones horitzontalment estretes. Aquesta anàlisi extra s'aconsegueix marcant l'opció "Criteris vores".
  • Les etiquetes es desplacen de les vores de visualització per intentar evitar que quedin tallades per la finestra de visualització.
  • És possible indicar "Evitar solapaments" per tal que el programa intenti evitar col·lisions entre les etiquetes.
  • En cas de múltiples illes (grups topològics) es tria el polígon d'àrea més gran.

El text es pot simbolitzar utilitzant la pràctica totalitat de propietats que apliquen als punts; en particular, cal recordar que el text es pot establir en unitats tipogràfiques o en unitats mapa (es farà més petit en allunyar-se).

Quan es canvia el contingut del camp que està essent usat com a atribut de l'objecte per a l'etiquetatge dinàmic en el procés de digitalització d'una capa (d'arcs/línies o polígons) simbolitzada amb etiquetatge dinàmic el canvi d'atribut es reflecteixi immediatament a la pantalla.

El mode automàtic

Com és habitual, si el primer cop que se simbolitza un camp no es disposa de la corresponent taula de simbolització, sol ser més pràctic que el MiraMon faci una primera taula a través de l'activació del mode "Automàtic". En aquest cas el programa actua com sempre, però amb les següents particularitats:

El camp que indica la font té un tractament categòric:

En aquest cas, de les propietats disponibles, el color és possiblement la que es voldrà que el MiraMon canviï; d'altra banda, amb un tractament categòric el programa no pot deduir a quines categories desitja la persona usuària assignar textos grans o petits, per exemple. Així, el programa generarà una taula en què es prendrà com a patró la darrera font constant carregada a la capa (Arial 10 si no se n'ha especificat cap) i generarà tants registres com es derivin de la projecció del camp, acolorint-los amb la típica paleta temàtica emprada en simbolització categòrica automàtica, més el registre destinat als sensedades, que se simbolitzarà amb la variable interna del MiraMonFontObjectesSenseAtribut (Arial 10 negreta subratllada cursiva centrada).

El camp que indica la font té un tractament quantitatiu continu.

En aquest cas, de les propietats disponibles, l'alçada de la font és possiblement la que es voldrà que el MiraMon canviï. Així, el programa generarà una taula en què es prendrà com a patró la darrera font constant carregada a la capa (Arial si no se n'ha especificat cap) i treballarà amb la mateixa heurística que en els altres casos, intentant deduir si convé aplicar una assignació directa, lineal, etc, partint de 10 registres als quals assignarà fonts progressivament més grans (6,8,10,12,14,16,18,20,22,24), més el registre destinat als sensedades, que se simbolitzarà amb la variable interna del MiraMonFontObjectesSenseAtribut (Arial 10 negreta subratllada cursiva centrada). Si prèviament s'ha assignat un nombre de símbols diferent (per exemple perquè s'ha assajat una simbolització categòrica o perquè s'ha variat el nombre a través del botó avançades, aquest serà el nombre de registres que assumirà el mode automàtic quantitatiu continu.

En ambdós casos, el camp TEXT_FONT creat té una amplada de 45 caràcters, que es considera sobrat per a encabir un text representatiu com ara "Barcelona" o "Sant Cugat del Vallès". El camp s'omple amb el mateix valor que CLAUSIMBOL però com s'ha explicat prèviament, la persona usuària pot canviar aquest valor si li convé. Si cal fer retocs a la taula de simbolització automàtica generada es pot desar des de "Fitxer | Desar paleta o taula de simbolització" i efectuar-los amb MiraDades.

4. Taules de simbolització d'icones (símbols)

Una taula de simbolització d'icones o símbols defineix, per a un nombre determinat de punts, el símbol associat a cadascun d'ells. Les taules de símbols poden representar un nombre il·limitat de símbols. Els símbols de les entitats de tipus punt, a més de fitxers EMF i WMF, també poden ser JPEG, PNG, BMP i GIF (fins i tot barrejats en una mateixa taula de simbolització). Cal tenir present, però, les limitacions gràfiques d'aquests formats si han de representar-se a una resolució que evidenciï la seva natura ràster. Només són aplicables a fitxers estructurats topològicament.

Per defecte, l'opció d'utilitzar símbols per a representar punts està desactivada, de manera que els punts es visualitzen mitjançant cercles blancs amb contorn negre. El radi per defecte d'aquests punts ve donat pel paràmetre "RadiPnt" del fitxer MiraMon.par, encara que es pot canviar a través de la caixeta corresponent: un valor 0 impedeix la visualització dels punts, mentre que el valor 1 o 2 és adequat en la majoria de casos.

En els fitxers de punts també es pot triar de representar el radi en funció d'un camp de la base de dades. Això és útil, per exemple, per a representar dades com nombre d'habitants de municipis associats a punts, o per a representar el recobriment de capçades obtingut en un inventari forestal. En aquest cas s'ha d'indicar el camp a usar així com el radi mínim i màxim per a escalar la representació.

A través del botó "Simbologia" de la caixa de diàleg Visualització de vectors PUNT es poden seleccionar diverses opcions per als símbols:

  • Símbol constant: tots els punts estan representats pel mateix símbol. El MiraMon disposa d'un ventall de símbols, classificats en símbols forestals, geomètrics, d'incendis, de números, de territori, topogràfics i altres. Cada cop que s'inicia una sessió, el MiraMon ofereix unes taules de simbolització (es pot consultar Directori de lectura de fitxers) des d'on es pot triar el símbol que es desitgi.
  • Símbol indicat per camp i taula de símbols: el símbol varia en funció del camp de la taula principal que es decideixi en funció d'una taula de símbols la qual ha de contenir al menys 3 camps: NOM_SIMBOL, DESCRIPCIO i FI_SIMBOL. Per a més informació, es pot consultar Camps de les taules de simbolització. Aquesta taula de símbols, es pot crear amb MiraDades o bé utilitzar alguna de les ja existents en el directori "Símbols".
  • En aquesta figura s'observa, a la part esquerra, les capitals de comarca amb un símbol constant. A la part dreta, el tipus i color del símbol està indicat en funció de la província. Si no es desitgen símbols addicionals, es pot optar per dissenyar-ne de nous des d'un programa d'edició gràfica capaç d'exportar EMF (o WMF) o bé fer aquesta edició amb el MiraMon i imprimir el resultat sobre un EMF.

  • Unitats de la mida del símbol: permet triar que la mida del símbol sigui en unitats píxels o bé en unitats mapa. Si es tria unitats mapa, la mida del símbol canviarà d'acord amb el canvi d'escala. En canvi, si es tria la mida en píxels, el símbol es mantindrà constant independentment de l'escala de visualització.
  • Mida dels símbols: permet triar la mida del símbol, amb un valor constant (el qual es pot definir) o bé amb un valor indicat per un camp de la base de dades (anàlogament al cas del radi del punt, pot ser útil, per exemple, per a representar dades com nombre d'habitants de municipis associats a un símbol, etc). En aquest cas cal indicar el camp a usar així com el radi mínim i màxim per a escalar la representació.
  • Posició del símbol: permet triar la posició del símbol entre centrat, superior dreta, superior esquerra, inferior dreta o inferior esquerra del punt d'inserció.

Per a no visualitzar el punt d'inserció en si, es pot indicar, a la caixa de diàleg Visualització de vectors PUNT, un radi de mida 0.

Si en la caixa de simbologia (icones) se simbolitza utilitzant el mateix camp (típicament un camp numèric d'enters petits 1,2,3...) per a indicar tant diferents grandàries relatives dels símbols com diferents símbols (indicats a la taula de simbolització dels símbols a través del corresponent camp CLAUSIMBOL (o NOM_SIMBOL)), s'observarà que a la llegenda es col·lapsen els dos criteris i es veuen els diferents símbols en gradació de grandàries.


S'han desenvolupat diversos vídeotutorials relatius a la simbolització al MiraMon, consultables a Simbolització en el MiraMon.