banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Thu 30 August 2012 08:59

bianca
Participant actif
Date d'inscription: 14 Mar 2008
Messages: 60

[MGE 2011] : symboles avancés - partage de connaissance

Bonjour à tous,

Voici un retour sur ce que nous avons mis en place avec les symboles avancés dans MGE.

En pièce jointe, un aperçu de ce que nous pouvons faire notamment au niveau de la représentation du bornage. Vous trouverez également un package avec des exemples de symboles.

Comment mettre en place de tels symboles :

1- Créer un symbole avancé :
    - dans MGE Studio, nouveau => créer => définition de symbole
    - dans Maestro, new ressource => simple symbol definition

2- Paramétrer le symbole : vous devez en xml dessiner le symbole et préciser son contenu, texte... Vous trouverez ici un lien vers une aide sur le paramétrage des symboles http://trac.osgeo.org/mapguide/attachme … raries.pdf

3- Une fois le symbole terminé vous devez l'appeler dans votre calque. Et là, il n'y a aucune interface, vous devrez donc vous plonger dans le xml du calque. Dans Maestro vous pouvez editer le xml du calque puis à l'aide de notepad ++ ou bloc note le modifier. Exemple, du calque affichant le bornage :

Code:

<?xml version="1.0" encoding="utf-8"?>
<LayerDefinition xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" version="1.3.0" xsi:noNamespaceSchemaLocation="LayerDefinition-1.3.0.xsd">
  <VectorLayerDefinition>
    <ResourceId>Library://Donnees/ORACLE/SIR_ORASP.FeatureSource</ResourceId>
    <FeatureName>FdoSIR:SIR_GP_PR</FeatureName>
    <FeatureNameType>FeatureClass</FeatureNameType>
    <Filter>NOT  AXE  LIKE 'V%_P'  AND NOT  AXE  LIKE 'V%_TM'  AND NOT  AXE  LIKE 'E%_V%' AND   NOT AXE LIKE 'E%_A48_AP'  AND  AXE  &lt;&gt; 'A48_AP' AND TYPE_AXE  &lt;&gt; 'DL'</Filter>
    <Geometry>GEOMETRIE</Geometry>
    <ToolTip>Concat ( Concat (  LIBELLE , '\n' ),  AXE )</ToolTip>
    <VectorScaleRange>
      <MaxScale>15001</MaxScale>
      <CompositeTypeStyle>
        <CompositeRule>
          <LegendLabel>sur RD</LegendLabel>
          <Filter>AXE LIKE 'D%' AND STATUT_BORNE = 'EN PLACE' OR  AXE LIKE 'D%' AND STATUT_BORNE = 'DEBUT'</Filter>
          <CompositeSymbolization>
            <SymbolInstance>
              <ResourceId>Library://Symboles/BORNE/BORNE_D_NUMERO_AXE.SymbolDefinition</ResourceId>
              <ParameterOverrides>
                <Override>
                  <SymbolName>BORNE_D_NUMERO_AXE</SymbolName>
                  <ParameterIdentifier>LIBELLE</ParameterIdentifier>
                  <ParameterValue>"LIBELLE"</ParameterValue>
                </Override>
                <Override>
                  <SymbolName>BORNE_D_NUMERO_AXE</SymbolName>
                  <ParameterIdentifier>AXE</ParameterIdentifier>
                  <ParameterValue>"AXE"</ParameterValue>
                </Override>
              </ParameterOverrides>
            </SymbolInstance>
          </CompositeSymbolization>
        </CompositeRule>
        <CompositeRule>
          <LegendLabel>sur RN ou Autoroute</LegendLabel>
          <Filter>AXE LIKE 'N%' or AXE LIKE 'A%' </Filter>
          <CompositeSymbolization>
            <SymbolInstance>
              <ResourceId>Library://Symboles/BORNE/BORNE_A_N_NUMERO_AXE.SymbolDefinition</ResourceId>
              <ParameterOverrides>
                <Override>
                  <SymbolName>BORNE_A_N_NUMERO_AXE</SymbolName>
                  <ParameterIdentifier>LIBELLE</ParameterIdentifier>
                  <ParameterValue>"LIBELLE"</ParameterValue>
                </Override>
                <Override>
                  <SymbolName>BORNE_A_N_NUMERO_AXE</SymbolName>
                  <ParameterIdentifier>AXE</ParameterIdentifier>
                  <ParameterValue>"AXE"</ParameterValue>
                </Override>
              </ParameterOverrides>
            </SymbolInstance>
          </CompositeSymbolization>
        </CompositeRule>
        <CompositeRule>
          <LegendLabel>sur Voie Verte</LegendLabel>
          <Filter>AXE LIKE 'VV%'</Filter>
          <CompositeSymbolization>
            <SymbolInstance>
              <ResourceId>Library://Symboles/BORNE/BORNE_VV_NUMERO_AXE.SymbolDefinition</ResourceId>
              <ParameterOverrides>
                <Override>
                  <SymbolName>BORNE_VV_NUMERO_AXE</SymbolName>
                  <ParameterIdentifier>LIBELLE</ParameterIdentifier>
                  <ParameterValue>"LIBELLE"</ParameterValue>
                </Override>
                <Override>
                  <SymbolName>BORNE_VV_NUMERO_AXE</SymbolName>
                  <ParameterIdentifier>AXE</ParameterIdentifier>
                  <ParameterValue>"AXE"</ParameterValue>
                </Override>
              </ParameterOverrides>
            </SymbolInstance>
          </CompositeSymbolization>
        </CompositeRule>
        <CompositeRule>
          <LegendLabel>sur RD : à vérifier</LegendLabel>
          <Filter>STATUT_BORNE  = 'A VERIFIER'</Filter>
          <CompositeSymbolization>
            <SymbolInstance>
              <ResourceId>Library://Symboles/BORNE/BORNE_D_A_VERIFIER_NUMERO_AXE.SymbolDefinition</ResourceId>
              <ParameterOverrides>
                <Override>
                  <SymbolName>BORNE_D_A_VERIFIER_NUMERO_AXE</SymbolName>
                  <ParameterIdentifier>LIBELLE</ParameterIdentifier>
                  <ParameterValue>"LIBELLE"</ParameterValue>
                </Override>
                <Override>
                  <SymbolName>BORNE_D_A_VERIFIER_NUMERO_AXE</SymbolName>
                  <ParameterIdentifier>AXE</ParameterIdentifier>
                  <ParameterValue>"AXE"</ParameterValue>
                </Override>
              </ParameterOverrides>
            </SymbolInstance>
          </CompositeSymbolization>
        </CompositeRule>
        <CompositeRule>
          <LegendLabel>sur RD : à poser</LegendLabel>
          <Filter>STATUT_BORNE = 'A POSER'</Filter>
          <CompositeSymbolization>
            <SymbolInstance>
              <ResourceId>Library://Symboles/BORNE/BORNE_D_A_POSE_NUMERO_AXE.SymbolDefinition</ResourceId>
              <ParameterOverrides>
                <Override>
                  <SymbolName>BORNE_D_A_POSE_NUMERO_AXE</SymbolName>
                  <ParameterIdentifier>LIBELLE</ParameterIdentifier>
                  <ParameterValue>"LIBELLE"</ParameterValue>
                </Override>
                <Override>
                  <SymbolName>BORNE_D_A_POSE_NUMERO_AXE</SymbolName>
                  <ParameterIdentifier>AXE</ParameterIdentifier>
                  <ParameterValue>"AXE"</ParameterValue>
                </Override>
              </ParameterOverrides>
            </SymbolInstance>
          </CompositeSymbolization>
        </CompositeRule>
        <CompositeRule>
          <LegendLabel>sur RD : fictif</LegendLabel>
          <Filter>STATUT_BORNE = 'FICTIVE'</Filter>
          <CompositeSymbolization>
            <SymbolInstance>
              <ResourceId>Library://Symboles/BORNE/BORNE_D_FICTIF_NUMERO_AXE.SymbolDefinition</ResourceId>
              <ParameterOverrides>
                <Override>
                  <SymbolName>BORNE_D_FICTIF_NUMERO_AXE</SymbolName>
                  <ParameterIdentifier>LIBELLE</ParameterIdentifier>
                  <ParameterValue>"LIBELLE"</ParameterValue>
                </Override>
                <Override>
                  <SymbolName>BORNE_D_FICTIF_NUMERO_AXE</SymbolName>
                  <ParameterIdentifier>AXE</ParameterIdentifier>
                  <ParameterValue>"AXE"</ParameterValue>
                </Override>
              </ParameterOverrides>
            </SymbolInstance>
          </CompositeSymbolization>
        </CompositeRule>
      </CompositeTypeStyle>
    </VectorScaleRange>
    <VectorScaleRange>
      <MinScale>15001</MinScale>
      <MaxScale>40001</MaxScale>
      <CompositeTypeStyle>
        <CompositeRule>
          <LegendLabel>sur RD</LegendLabel>
          <Filter>AXE LIKE 'D%' AND STATUT_BORNE = 'EN PLACE' OR  AXE LIKE 'D%' AND STATUT_BORNE = 'DEBUT'</Filter>
          <CompositeSymbolization>
            <SymbolInstance>
              <ResourceId>Library://Symboles/BORNE/BORNE_D_NUMERO.SymbolDefinition</ResourceId>
              <ParameterOverrides>
                <Override>
                  <SymbolName>BORNE_D_NUMERO</SymbolName>
                  <ParameterIdentifier>LIBELLE</ParameterIdentifier>
                  <ParameterValue>"LIBELLE"</ParameterValue>
                </Override>
              </ParameterOverrides>
            </SymbolInstance>
          </CompositeSymbolization>
        </CompositeRule>
        <CompositeRule>
          <LegendLabel>sur RN ou Autoroute</LegendLabel>
          <Filter>AXE LIKE 'N%' or AXE LIKE 'A%' </Filter>
          <CompositeSymbolization>
            <SymbolInstance>
              <ResourceId>Library://Symboles/BORNE/BORNE_A_N_NUMERO.SymbolDefinition</ResourceId>
              <ParameterOverrides>
                <Override>
                  <SymbolName>BORNE_A_N_NUMERO</SymbolName>
                  <ParameterIdentifier>LIBELLE</ParameterIdentifier>
                  <ParameterValue>"LIBELLE"</ParameterValue>
                </Override>
              </ParameterOverrides>
            </SymbolInstance>
          </CompositeSymbolization>
        </CompositeRule>
        <CompositeRule>
          <LegendLabel>sur Voie Verte</LegendLabel>
          <Filter>AXE LIKE 'VV%'</Filter>
          <CompositeSymbolization>
            <SymbolInstance>
              <ResourceId>Library://Symboles/BORNE/BORNE_VV_NUMERO.SymbolDefinition</ResourceId>
              <ParameterOverrides>
                <Override>
                  <SymbolName>BORNE_VV_NUMERO</SymbolName>
                  <ParameterIdentifier>LIBELLE</ParameterIdentifier>
                  <ParameterValue>"LIBELLE"</ParameterValue>
                </Override>
              </ParameterOverrides>
            </SymbolInstance>
          </CompositeSymbolization>
        </CompositeRule>
        <CompositeRule>
          <LegendLabel>sur RD : à vérifier</LegendLabel>
          <Filter>STATUT_BORNE = 'A VERIFIER'</Filter>
          <CompositeSymbolization>
            <SymbolInstance>
              <ResourceId>Library://Symboles/BORNE/BORNE_D_A_VERIFIER_NUMERO.SymbolDefinition</ResourceId>
              <ParameterOverrides>
                <Override>
                  <SymbolName>BORNE_D_A_VERIFIER_NUMERO</SymbolName>
                  <ParameterIdentifier>LIBELLE</ParameterIdentifier>
                  <ParameterValue>"LIBELLE"</ParameterValue>
                </Override>
              </ParameterOverrides>
            </SymbolInstance>
          </CompositeSymbolization>
        </CompositeRule>
        <CompositeRule>
          <LegendLabel>sur RD : à poser</LegendLabel>
          <Filter>STATUT_BORNE = 'A POSER'</Filter>
          <CompositeSymbolization>
            <SymbolInstance>
              <ResourceId>Library://Symboles/BORNE/BORNE_D_A_POSE_NUMERO.SymbolDefinition</ResourceId>
              <ParameterOverrides>
                <Override>
                  <SymbolName>BORNE_D_A_POSE_NUMERO</SymbolName>
                  <ParameterIdentifier>LIBELLE</ParameterIdentifier>
                  <ParameterValue>"LIBELLE"</ParameterValue>
                </Override>
              </ParameterOverrides>
            </SymbolInstance>
          </CompositeSymbolization>
        </CompositeRule>
        <CompositeRule>
          <LegendLabel>sur RD : fictif</LegendLabel>
          <Filter>STATUT_BORNE = 'FICTIVE'</Filter>
          <CompositeSymbolization>
            <SymbolInstance>
              <ResourceId>Library://Symboles/BORNE/BORNE_D_FICTIF_NUMERO.SymbolDefinition</ResourceId>
              <ParameterOverrides>
                <Override>
                  <SymbolName>BORNE_D_FICTIF_NUMERO</SymbolName>
                  <ParameterIdentifier>LIBELLE</ParameterIdentifier>
                  <ParameterValue>"LIBELLE"</ParameterValue>
                </Override>
              </ParameterOverrides>
            </SymbolInstance>
          </CompositeSymbolization>
        </CompositeRule>
      </CompositeTypeStyle>
    </VectorScaleRange>
    <VectorScaleRange>
      <MinScale>40001</MinScale>
      <MaxScale>75001</MaxScale>
      <CompositeTypeStyle>
        <CompositeRule>
          <LegendLabel>sur RD</LegendLabel>
          <Filter>AXE LIKE 'D%' AND STATUT_BORNE = 'EN PLACE' OR  AXE LIKE 'D%' AND STATUT_BORNE = 'DEBUT'</Filter>
          <CompositeSymbolization>
            <SymbolInstance>
              <ResourceId>Library://Symboles/BORNE/BORNE_D.SymbolDefinition</ResourceId>
              <ParameterOverrides />
            </SymbolInstance>
          </CompositeSymbolization>
        </CompositeRule>
        <CompositeRule>
          <LegendLabel>sur RN ou Autoroute</LegendLabel>
          <Filter>AXE LIKE 'N%' or AXE LIKE 'A%' </Filter>
          <CompositeSymbolization>
            <SymbolInstance>
              <ResourceId>Library://Symboles/BORNE/BORNE_A_N.SymbolDefinition</ResourceId>
              <ParameterOverrides />
            </SymbolInstance>
          </CompositeSymbolization>
        </CompositeRule>
        <CompositeRule>
          <LegendLabel>sur Voie Verte</LegendLabel>
          <Filter>AXE LIKE 'VV%'</Filter>
          <CompositeSymbolization>
            <SymbolInstance>
              <ResourceId>Library://Symboles/BORNE/BORNE_VV.SymbolDefinition</ResourceId>
              <ParameterOverrides />
            </SymbolInstance>
          </CompositeSymbolization>
        </CompositeRule>
        <CompositeRule>
          <LegendLabel>sur RD : à vérifier</LegendLabel>
          <Filter>STATUT_BORNE = 'A VERIFIER'</Filter>
          <CompositeSymbolization>
            <SymbolInstance>
              <ResourceId>Library://Symboles/BORNE/BORNE_D_A_VERIFIER.SymbolDefinition</ResourceId>
              <ParameterOverrides />
            </SymbolInstance>
          </CompositeSymbolization>
        </CompositeRule>
        <CompositeRule>
          <LegendLabel>sur RD : à poser</LegendLabel>
          <Filter>STATUT_BORNE = 'A POSER'</Filter>
          <CompositeSymbolization>
            <SymbolInstance>
              <ResourceId>Library://Symboles/BORNE/BORNE_D_A_POSE.SymbolDefinition</ResourceId>
              <ParameterOverrides />
            </SymbolInstance>
          </CompositeSymbolization>
        </CompositeRule>
        <CompositeRule>
          <LegendLabel>sur RD : fictif</LegendLabel>
          <Filter>STATUT_BORNE = 'FICTIVE'</Filter>
          <CompositeSymbolization>
            <SymbolInstance>
              <ResourceId>Library://Symboles/BORNE/BORNE_D_FICTIF.SymbolDefinition</ResourceId>
              <ParameterOverrides />
            </SymbolInstance>
          </CompositeSymbolization>
        </CompositeRule>
      </CompositeTypeStyle>
    </VectorScaleRange>
  </VectorLayerDefinition>
</LayerDefinition>

Ici on ne trouve pas les balises habituelles de pointtypestyle, linetypestyle ou areatypesytle mais nous avons du compositetypesteyle. On peut comme pour les calques traditionnels :
- gérer plusieurs plages d'échelle  : entre les balises <VectorScaleRange></VectorScaleRange>
- des thématiques : chaque classe est définie entre les balises <CompositeRule></CompositeRule> et dans la balise Filter

Vous allez déclarer le chemin d'accès au symbole avancé au niveau du RessourceId.

Entre les balises ParameterOverrides, vous préciserez le champ utilisé pour l'affichage du texte :

Code:

              <ParameterOverrides>
                <Override>
                  <SymbolName>BORNE_D_A_POSE_NUMERO</SymbolName>
                  <ParameterIdentifier>LIBELLE</ParameterIdentifier>
                  <ParameterValue>"LIBELLE"</ParameterValue>
                </Override>
              </ParameterOverrides>

Un écueil à éviter, attention au SymbolName qui est aussi déclaré dans le symbole. Si ce nom n'est pas correct, aucun texte ne s'affichera.

Une réserve toutefois avec ces symboles pour ceux qui utiliserait MGE via Geomap, ces symboles ne remontent pas dans la légende lors de l'impression...

Vous avez donc maintenant un symbole de borne avec le nom de la route et le numéro de la borne...

Cordialement.


Fichier(s) joint(s) :
Pour accéder aux fichiers vous devez vous inscrire.

Hors ligne

 

Pied de page des forums

Powered by FluxBB