1

ユーザーがマップ(画像)に図形を描くことができるリーフレットAPIを使用しています...

最初にimageoverlayを使ってベースマップにレイヤーコントロール(1レイヤーを扱う)を追加して……

クリック イベントが新しいレイヤーの作成を処理するページに、id 'newLyer' のボタンを追加しました。つまり、ユーザーは新しいレイヤーを作成し、レイヤー コントロールを更新できます (現在 2 つのレイヤーを処理しています)。

いくつかの方法を使用してレイヤーを作成し、コントロールに追加しましたが失敗しました....

新しいレイヤーを layerGroup に追加する

var layerGroup = new L.LayerGroup(),
                    imageOverlayUrl = 'aa.jpg',
                    // New imageoverlay added to the layergroup
                    imageOverlay = new L.ImageOverlay(imageOverlayUrl, bounds).addTo(layerGroup),
                    // New featuregroup added to the layergroup
                    featureGroup = new L.FeatureGroup().addTo(layerGroup);

コントロールを追加する必要があるLayerControl(私が正しい場合)

        var layerControl = new L.control.layers({
            'Main': layerGroup,
            //here i need to add new layer control
            }, null, { collapsed: false }).addTo(map);

これまでの静的コードを使用した OnClick 関数。これはクリック時に実行されます

        $('#newLayer').click(function addNewLayer() {
            // Second layergroup not added to the map yet
            var layerGroupNew = new L.LayerGroup(),
                imageOverlayUrlNew = 'bb.png',
                // New imageoverlay added to the second layergroup
                imageOverlayNew = new L.imageOverlay(imageOverlayUrlNew, bounds).addTo(layerGroup2),
                // New featuregroup added to the second layergroup
                featureGroupNew = new L.FeatureGroup().addTo(layerGroupNew);
        });

要するに

最初は、コントロールを持つレイヤーが1つありましたが、onclick関数はマップに追加される新しいレイヤーを作成しますが、このレイヤーをlayerControlに追加するにはどうすればよいですか....

誰かがこの種のことを行う方法についてアイデアを持っている場合は、助けてください、、、、どんな種類の助けや参照もいただければ幸いです....お時間をいただきありがとうございます

4

1 に答える 1