Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
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 Wed 11 May 2011 15:27

lafeelilie
Juste Inscrit !
Lieu: Nantes
Date d'inscription: 11 May 2011
Messages: 5
Site web

Mapfish légende choropleth et proportionnal symbol

Bonjour à tous,

Je réalise une interface web basée sur Mapfish et plus particulièrement sur les widgets choropleth et proportionnal symbol.
J'ai un gros souci pour afficher la légende.
En effet je veux passer par le viewport (le code fonctionne lorsque j'utilise une simple div) et je n'y parviens pas.
Voici mon code :

Pour le widget :
     var choropleth = new mapfish.widgets.geostat.Choropleth({
                    map: carte,
                    layer: choroplethLayer,
                    title: 'Chloroplèthe',
                    nameAttribute: 'NOM_ZONE',

                    indicators:[
            <%
                        for (int i = 0; i < codind.length; i++) {
                            out.println("['" + codind[i] + "_" + datefin[i].replace("-", "_") + "','" + titre[i] + "']");

                            /*
                            if (i != codind.length - 1) {
                            out.println(",");
                            }
                             */


                        }

            %>

                        ],
                        url:"preview",
                        legendDiv : 'myChoroplethLegendDiv',

                        featureSelection: false,
                        loadMask : {msg: 'Chargement...', msgCls: 'x-mask-loading'},
                        defaults: {
                            width: 130
                        },

                        listeners: {
                            collapse: {
                                // hide layer if collapsed
                                fn: function() {
                                    this.layer.setVisibility(false);
                                }
                            },
                            expand: {
                                // show layer if expanded
                                fn: function() {
                                    if (this.classificationApplied) {
                                        this.layer.setVisibility(true);
                                    }
                                }
                            }
                        }
                    });
                    choroplethLayer.events.on({
                        'featureselected': showDetails,
                        'featureunselected': hideDetails,
                        'scope': choropleth
                    });

Et pour le viewport:
                   var viewport = new Ext.Viewport({
                        layout: "border",

                        items:[
                            new Ext.BoxComponent({ // raw
                                region: 'north',
                                el: 'north',
                                height: 140
                            }),{
                                region: 'east',
                                title: 'Analyse thématique ',
                                collapsed: true,
                                split: true,
                                collapsible: true,
                                width: 250,
                                minSize: 175,
                                maxSize: 500,
                                margins: '0 0 0 5',
                                layout: 'accordion',
                                defaults: {
                                    border: true,
                                    frame: true
                                },
                                items: [
                                    choropleth,
                                    propSymbol,
                                    legendsetPanel,

                                ]
                            },
                                legendPanel
                            , {
                                region: "center",
                                id: "map",
                                title: "Carte",
                                layout: "fit",
                                split: true,
                                xtype: 'mapcomponent',
                                map: carte

                            }, {

                                region: 'south',
                                contentEl: 'south',
                                id: 'south-panel',
                                split: false,
                                height: 100,
                                minSize: 100,
                                maxSize: 200,
                                collapsible: true,
                                title: 'Résultats',
                                margins: '0 0 0 0'

                            }, {

                                region:'west',
                                id:'ouest',
                                title:'Gestion des couches',
                                split:true,
                                width:200,
                                items:[ {
                                        id:'tree',
                                        title:'Arborescence',
                                        xtype:'layertree',
                                        map:carte,
                                        model: treeModel,
                                        showWmsLegend: true,
                                        height:300,
                                        plugins: [
                                            mapfish.widgets.LayerTree.createContextualMenuPlugin(['opacitySlideDirect'])
                                        ]

                                    },{
                                        title: 'Carte générale',
                                        html:'<div id="overviewmap"></div>'
                                    },{
                                        id:"raccourcis",
                                        title:"DOM/France Métro",
                                        height:"auto",
                                        xtype:"shortcuts",
                                        map: carte,
                                        store : createShortcutsStore(),
                                        templates : {
                                            header: new Ext.Template("<br/>Zoomez directement sur<br/>"),
                                            footer: new Ext.Template("<br/>Cliquez droit sur les couches pour gérer leur tranparence")
                                        }
                                    }

                                ]
                            }]
                    });

En théorie legendDiv : 'myChoroplethLegendDiv' permet d'afficher la légende dans une div myChoroplethLegendDiv.
Cependant à cause du viewport je ne peux pas mettre ma div directement dans le body...
Comment puis-je afficher ma légende?
Est ce que je dois créer un mappanel?
Merci d'avance pour votre aide!
Cordialement.

Hors ligne

 

#2 Wed 11 May 2011 16:05

lafeelilie
Juste Inscrit !
Lieu: Nantes
Date d'inscription: 11 May 2011
Messages: 5
Site web

Re: Mapfish légende choropleth et proportionnal symbol

Quelqu'un est déjà parvenu à afficher une légende vecteur avec mapfish?
Merci!

Hors ligne

 

#3 Wed 11 May 2011 16:12

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9869
Site web

Re: Mapfish légende choropleth et proportionnal symbol

Bonjour,

Ce n'est malheureusement pas possible pour le moment voir http://lists.mapfish.org/pipermail/user … 03289.html

Y.


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

#4 Wed 11 May 2011 17:50

lafeelilie
Juste Inscrit !
Lieu: Nantes
Date d'inscription: 11 May 2011
Messages: 5
Site web

Re: Mapfish légende choropleth et proportionnal symbol

Non c'est bon j'ai presque réussi à résoudre mon problème!!!
Dans les items il faut créer la div avec par exemple:

contentEl: 'choronorth'

puis l'appeler dans le body:
            <div id="choronorth">
            <div id="myChoroplethLegendDiv"></div>
            </div>
Merci d'avoir répondu tout de même!
Cordialement.

Hors ligne

 

#5 Wed 11 May 2011 18:05

Yves
Membre du bureau
Lieu: Aix-les-Bains
Date d'inscription: 22 Mar 2006
Messages: 9869
Site web

Re: Mapfish légende choropleth et proportionnal symbol

lafeelilie a écrit:

Non c'est bon j'ai presque réussi à résoudre mon problème!!!
Dans les items il faut créer la div avec par exemple:

contentEl: 'choronorth'

puis l'appeler dans le body:
            <div id="choronorth">
            <div id="myChoroplethLegendDiv"></div>
            </div>
Merci d'avoir répondu tout de même!
Cordialement.


J'avais mal compris wink

Y.


Yves Jacolin, bénévole de l'association GeoRezo.net, agit au nom et pour le compte de l'association - Partageons ce qui nous départage !!  - GeoRezo vous aide ? Aidez GeoRezo !

Hors ligne

 

Pied de page des forums

Powered by FluxBB