Pages: 1
- Sujet précédent - [MGE 2011] : symboles avancés et bibliothèque de symboles - Sujet suivant
#1 Mon 27 August 2012 16:50
- bianca
- Participant actif
- Date d'inscription: 14 Mar 2008
- Messages: 60
[MGE 2011] : symboles avancés et bibliothèque de symboles
Bonjour à tous,
Je souhaite combiner au niveau d'un même calque des symboles avancés et des symboles issus de bibliothèque de symboles. J'ai bidouillé un peu en testant ce genre de code:
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_PGT_SIGNA_MESURE</FeatureName> <FeatureNameType>FeatureClass</FeatureNameType> <Geometry>GEOMETRIE_DECALEE</Geometry> <VectorScaleRange> <CompositeTypeStyle> <CompositeRule> <LegendLabel>DIRECTION</LegendLabel> <CompositeSymbolization> <SymbolInstance> <ResourceId>Library://Symboles/PANNEAUX_ROUTE.SymbolLibrary</ResourceId> <LibraryItemName>KD22</LibraryItemName> <ParameterOverrides /> </SymbolInstance> </CompositeSymbolization> </CompositeRule> </CompositeTypeStyle> </VectorScaleRange> </VectorLayerDefinition> </LayerDefinition>
Mais cela ne semble pas fonctionner.
Autre piste, à priori on peu ajouter une image dans une définition de symbole. J'ai trouvé un exemple ici : http://trac.osgeo.org/mapguide/wiki/AdvancedStylization.
Dont voici le code du symbole :
Code:
<?xml version="1.0" encoding="UTF-8"?> <SimpleSymbolDefinition xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xsi:noNamespaceSchemaLocation="SymbolDefinition-1.0.0.xsd" version="1.0.0"> <Name>Fire</Name> <Graphics> <Image> <ResizeControl>'ResizeNone'</ResizeControl> <Reference> <ResourceId/> <LibraryItemName>'fire.png'</LibraryItemName> </Reference> <SizeX>8.0</SizeX> <SizeY>9.0</SizeY> <SizeScalable>True</SizeScalable> <Angle>0.0</Angle> <PositionX>0.0</PositionX> <PositionY>4.0</PositionY> </Image> <Path> <Geometry>M -1.0,0.0 L 0.0,1.0 L 1.0,0.0 L 0.0,-1.0 Z</Geometry> <FillColor>ff000000</FillColor> </Path> </Graphics> <PointUsage> <Angle>%ROTATION_ANGLE%</Angle> </PointUsage> <ParameterDefinition> <Parameter> <Identifier>ROTATION_ANGLE</Identifier> <DefaultValue>0.0</DefaultValue> <DisplayName>Angle to rotate symbol</DisplayName> </Parameter> </ParameterDefinition> </SimpleSymbolDefinition>
Par contre, je ne comprends pas où doit-être stockée l'image fire.png et comment l'y ajouter. J'ai fait une recherche sur le nom du fichier fire.png sur l'ensemble du répertoire d'installation MapGuide et il semble se trouver dans des répertoires étranges :
MGE2011\Repositories\Library\DataFiles\7f668b32-f051-11e1-8000-005056a3002c
MGE2011\Repositories\Session\DataFiles\17bdaa0a-f052-11e1-8000-005056a3002c
En outre, peut-on appeler un symbole chargé dans une bibliothèque de symboles ? Si oui, comment ?
Merci d'avance.
Bianca GUILLO
Hors ligne
#2 Thu 30 August 2012 08:26
- bianca
- Participant actif
- Date d'inscription: 14 Mar 2008
- Messages: 60
Re: [MGE 2011] : symboles avancés et bibliothèque de symboles
Bonjour à tous,
J'ai fait un autre test. Étant donné que par défaut MGE permet la cohabitation de représentation ponctuelle, linéaire et surfacique, j'ai tenté de faire cohabiter la représentation ponctuelle et composite comme suit :
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_ODBC.FeatureSource</ResourceId> <FeatureName>Default:V_PEGASE_POINT_ARRET</FeatureName> <FeatureNameType>FeatureClass</FeatureNameType> <Geometry>Geometry</Geometry> <ToolTip>LIBELLE_PA</ToolTip> <VectorScaleRange> <MaxScale>150001</MaxScale> <PointTypeStyle> <DisplayAsText>false</DisplayAsText> <AllowOverpost>false</AllowOverpost> <PointRule> <LegendLabel></LegendLabel> <PointSymbolization2D> <Mark> <Unit>Centimeters</Unit> <SizeContext>DeviceUnits</SizeContext> <SizeX>0.2</SizeX> <SizeY>0.2</SizeY> <Shape>Square</Shape> <Fill> <FillPattern>Solid</FillPattern> <ForegroundColor>FF0080FF</ForegroundColor> <BackgroundColor>ff000000</BackgroundColor> </Fill> <Edge> <LineStyle>Solid</LineStyle> <Thickness>0.0</Thickness> <Color>FF0000FF</Color> <Unit>Centimeters</Unit> <SizeContext>DeviceUnits</SizeContext> </Edge> </Mark> </PointSymbolization2D> </PointRule> </PointTypeStyle> <CompositeTypeStyle> <CompositeRule> <LegendLabel>DIRECTION</LegendLabel> <CompositeSymbolization> <SymbolInstance> <ResourceId>Library://Symboles/DIRECTION.SymbolDefinition</ResourceId> <ParameterOverrides /> </SymbolInstance> </CompositeSymbolization> </CompositeRule> </CompositeTypeStyle> </VectorScaleRange> </VectorLayerDefinition> </LayerDefinition>
Mais seul le style composite s'affiche.
Du coup, j'ai créé des symboles avancés et redessinant les-dits symboles.
Cordialement.
Hors ligne
Pages: 1
- Sujet précédent - [MGE 2011] : symboles avancés et bibliothèque de symboles - Sujet suivant