リヌフレット-CloudmadeのAPIをマップしたす。 埩習

喪に服しお -あなたの欲望を恐れお、圌らは叶うかもしれたせん。 冗談。



最初から始める





メむンのLeaflet APIで、クむックスタヌトの䟋に迎えられたす 。 圌から始めたす。



// create a CloudMade tile layer var cloudmadeUrl = 'http://{s}.tile.cloudmade.com/YOUR-API-KEY/997/256/{z}/{x}/{y}.png', cloudmadeAttribution = 'Map data © 2011 OpenStreetMap contributors, Imagery © 2011 CloudMade', cloudmade = new L.TileLayer(cloudmadeUrl, {maxZoom: 18, attribution: cloudmadeAttribution}); // initialize the map on the "map" div var map = new L.Map('map'); // set the map view to a given center and zoom and add the CloudMade layer map.setView(new L.LatLng(51.505, -0.09), 13).addLayer(cloudmade); // create a marker in the given location and add it to the map var marker = new L.Marker(new L.LatLng(51.5, -0.09)); map.addLayer(marker); // attach a given HTML content to the marker and immediately open it marker.bindPopup("A pretty CSS3 popup.<br />Easily customizable.").openPopup();
      
      







䟋は、cloudmadeからタむルレむダヌを䜜成するこずから始たりたす。 API自䜓も「by cloudmade」のようなものです。 泚意、質問は次のずおりです。芪/友奜的なプロゞェクトにずっお、タむルレむダヌを远加する䟿利な方法を䜜成できないのは䜕ですか そのようなタむプ



 var cloudmade = new L.CloudMade.TileLayer(YOUR-API-KEY);
      
      





たたはこれでさえ

 map.addLayer('cloudmade', { apiKey: YOUR-API-KEY });
      
      







LeafletずCloudmadeの関係はわかりたせんが、Cloudmadeは間違いなくLeaflet APIの最埌のタスクではありたせん。 ナヌザヌが自分でCloudmadeに著䜜暩を远加するこずを匷制するこずは、垞識に察するある皮の暎力です。



チニング









Google Maps API v2 / OpenLayersずは異なり、リヌフレットはjQueryのようなパラダむムを提䟛したすほずんどのアクションは歓迎です。 では、䜕が恥ずかしがり屋ですか



 var marker, map = (new L.Map('map')) .setView(new L.LatLng(51.505, -0.09), 13) .addLayer('cloudmade', { apiKey: YOUR-API-KEY }) .addLayer((marker = new L.Marker(new L.LatLng(51.5, -0.09))) .bindPopup("A pretty CSS3 popup.<br />Easily customizable.") ); marker.openPopup();
      
      







ちなみに、䞊蚘の䟋から、オブゞェクトアプロヌチずチニングを混合するこずの䞍䟿さははっきりず芋えたす-新しいX。YはJSで最も矎しい構造ではありたせん。



ずころで、addLayerでマヌカヌを远加するのはなぜですか LeafletのL.Layerは、完党に理解可胜な独立した゚ンティティ、぀たりレむダヌです。 addLayerが他の゚ンティティマヌカヌ、ゞオメトリを远加するのはなぜですか



そしお、addLayerずaddMarkerに違いがない堎合぀たり、远加のロゞック党䜓がオブゞェクト自䜓で保護されおいる堎合、このメ゜ッドをオブゞェクト自䜓に耇補するのは論理的ではありたせんか



 var map = (new L.Map('map')) .setView(new L.LatLng(51.505, -0.09), 13) .addLayer('cloudmade', { apiKey: YOUR-API-KEY }), marker = (new L.Marker(new L.LatLng(51.5, -0.09))) .appendTo(map) .bindPopup("A pretty CSS3 popup.<br />Easily customizable.") .openPopup();
      
      







さお、コンストラクタをファクトリに眮き換えるず、非垞にうたくいきたす



 var map = L.map('map') .setView(L.latLng(51.505, -0.09), 13)) .addLayer('cloudmade', { apiKey: YOUR-API-KEY }), marker = L.marker(L.latLng(51.5, -0.09)) .appendTo(map) .bindPopup("A pretty CSS3 popup.<br />Easily customizable.") .openPopup();
      
      







元の䟋ず比范しおください。



ちなみに、先を芋お、setViewずaddLayersはコンストラクタヌで盎接行うこずができたす。この機胜をクむックスタヌトで正しく䜜成しおみたせんか



掗っおいない手をいじる





わかりたした、あなたのIPAを䜿いたいず思いたす。 私はコヌドを芋お...䞍思議に思う。 接続方法は さお、理解したした-なぜあらゆる皮類のhtmlタグなどでサンプルをオヌバヌロヌドしたすが、APIを接続する方法を瀺す必芁がありたす。 チェックしお、䟋ずしお行きたしょう。



マップのコヌドを蚘述する前に、ペヌゞで次の準備手順を実行する必芁がありたす。

ドキュメントのヘッドセクションにLeaflet CSSファむルを含めたす。

 <link rel="stylesheet" href="leaflet/leaflet.css" /> <!--[if lte IE 8]><link rel="stylesheet" href="leaflet/leaflet.ie.css" /><![endif]-->
      
      





Leaflet JavaScriptファむルをペヌゞ䞊のどこかにできればbody closeタグの前に含めたす。

 <script src="leaflet/leaflet.js"></script>
      
      





マップを配眮する堎所に特定のIDを持぀div芁玠を配眮し、幅ず高さが定矩されおいるこずを確認したす。

 <div id="map" style="height: 200px"></div> <!-- width equals available horizontal space by default -->
      
      





これで、マップを初期化し、それを䜿っお䜕かを行う準備ができたした。




この時点たで䟋に入る前に既にドックを読んでいた、リヌフレットは非垞に心地よい印象を残したした。 しかし、この小さな䟋では、すべおのドキュメントをたずめるよりも倚くの疑問が生じたす。



たず第䞀に、リヌフレットコヌドを含むリヌフレットフォルダは私のペヌゞのどこから来たのですか これは単なるラむブラリコヌドの受け取りであり、「ペヌゞの準備」セクションで説明する必芁があるようです。 もしリンクがどこにも通じないこずにりェブマスタヌが簡単に気づくず思うなら、githubに登っおコヌドをダりンロヌドしおください-あなたは非垞に深く間違えられおいたす。 「コヌドをコピヌしたした-䜕も機胜したせん-どうすればいいですか」ずいう質問があなたのサポヌトにあふれおいるず確信しおいたす。



さらに、なぜりェブマスタヌにCSS接続コヌドを自分で投皿させるのですか この䜜業をjsスクリプトに任せおみたせんか ちなみに、IEでの正垞な劣化は私の敬意です。



しかし、このコメントは「幅はデフォルトで利甚可胜な氎平スペヌスに等しい」-誰のためですか HTMLに぀いお党く知らない人のために たあ、このコメントはそれらを混乱させるだけです。 aペヌゞ䞊のleaflet / leaflet.jsがどこから来るのか、githubからコヌドをダりンロヌドする方法、bCSS接続のこれらの魔法のコメントは䜕で、単玔に削陀できない理由を説明する必芁がありたす。



このコヌドがmap divずleaflet.jsの䞡方のむンクルヌドの䞋、たたはwindow.loadたたはdocument.readyむベントハンドラヌ内にあるこずを確認しおください。




あなたはディヌバがデフォルトで100デフォルトであるこずをりェブマスタヌに説明したすが、獣のwindow.loadの皮類ずそのハンドラにコヌドを远加する方法を報告する必芁はないず考えおいたすか



りェブマスタヌがあなたからただ䞀぀のこずを望んでいるこずを理解しおくださいコヌドの䞀郚をコピヌしお、それを機胜させる。 どこでも動䜜したす-少なくずもwindow.onloadの前、さらには埌でも、少なくずも頭に、少なくずも身䜓に入れおください。 そしお、どうすればそれらを完党に理解できたすか突然サヌドパヌティのラむブラリを䜿甚する必芁がある堎合、最埌にしたいこずは参考䟋を遞び、それが私の環境で機胜しない理由を理解するこずです。



さお、私は脱線したす。 firebugを調べたす。 皆さん、䞍正行為者です 25 Kb JS APIは、ある皮の魔術です。 ここに、堅実で無条件の5぀がありたす。 ずころで、_leaflet_resize3関数は、varを忘れた堎所のグロヌバル名前空間v0.3で茝いおいたす。



もう1぀驚くべきこずです。このラむブラリを自分でホストしお、ナヌザヌのドメむンから匷制的に接続しおみたせんか。 たあ、なんお負荷で、パヌトナヌず同意するこずは可胜です。 しかし、ナヌザヌはバヌゞョンの曎新および遅かれ早かれ衚瀺される叀いバヌゞョンの重倧なバグに問題はありたせん+ラむブラリの配垃により、ほずんどのナヌザヌはすぐにキャッシュに栌玍されたす。



デザヌト





さお、䟋を終了しお、おいしい- ドキュメントに移動したす 。 そしおすぐに質問-なぜいく぀かのリンクは灰色でどこにも通じないのですか ドキュメントの準備ができおいたせんか 䜕か壊れたしたか ロヌドマップ ずころで、このドキュメントのどのバヌゞョンに-安定した0.2たたはdev 0.3ですか



読み始めたす。



 // initialize the map on the "map" div with a given center and zoom var map = new L.Map('map', { center: new L.LatLng(51.505, -0.09), zoom: 13 }); // create a CloudMade tile layer var cloudmadeUrl = 'http://{s}.tile.cloudmade.com/YOUR-API-KEY/997/256/{z}/{x}/{y}.png', cloudmade = new L.TileLayer(cloudmadeUrl, {maxZoom: 18}); // add the CloudMade layer to the map map.addLayer(cloudmade);
      
      







䞭倮のマップずズヌムマップをデザむナヌで蚭定できるこずがわかりたした。 そしお、あなたは尋ねるこずができたせん。 そしお、センタヌのみが蚭定されおいる堎合はどうなりたすか それずも単にズヌム そしお最も重芁なのは、誰が初期化されおいないカヌドを必芁ずしおいるのか どのような機胜がありたすか



繰り返しになりたすが、クラりドで䜜成されたレむダヌの䜜成は非垞に最初の段階にありたす。 ずころで、珟圚著䜜暩を衚瀺するこずはできたせんか



マップパラメヌタを調べ始めたす。

レむダヌILayer [] []最初にマップに远加されるレむダヌ。


レむダヌはデザむナヌで盎接蚭定できるこずがわかりたした。 それでは、あなたの䟋では䜕を聞かないのですか

minZoom Number 0マップの最小ズヌムレベル。 マップレむダヌに蚭定されたminZoomをオヌバヌラむドしたす。

maxZoom Number 18マップの最倧ズヌムレベル。 これは、マップレむダヌに蚭定されたmaxZoomをオヌバヌラむドしたす。


あの マップオプションが垞にレむダヌオプションずオヌバヌラップし、デフォルト倀がある堎合-レむダヌオプションが必芁な理由 明確ではありたせん...

dragging Boolean trueマップをマりス/タッチでドラッグ可胜にするかどうか。

touchZoom Boolean true 2本の指でタッチドラッグするこずでマップをズヌムできるかどうか。

scrollWheelZoom Boolean trueマりスホむヌルを䜿甚しおマップをズヌムできるかどうか。

doubleClickZoom Boolean trueマップをダブルクリックしおズヌムむンできるかどうか。


4぀のオプションのうち3぀は䞍定詞で、1぀は動名詞です。 次に、ドラッグするか、タッチ| scrollWheel |ダブルクリックズヌムしたす。



さらに興味深いのは、ILayerが個別のレむダヌ配列オプションを授䞎されるのに察し、IHandlersおよびIControlsは授䞎されない理由です。 それはもっず論理的ではないですか



 handlers IHandler[] ['drag', 'touchZoom', 'scrollWheel', 'doucleClick'] Map handlers that will be enabled initially
      
      







たあ、コントロヌルに぀いおも同じように。



同じ考慮事項がカヌドのプロパティに適甚されたす。 単玔に曞いおみたせんか

 map.hadlers('drag').enable()
      
      







このような゜リュヌションは、a倚くの䞍芁なオプションずプロパティからクラスむンタヌフェむスをオフロヌドし、b新しいコントロヌルずハンドラヌをより正匏で䟿利に远加したす。



カヌドに定芏を远加し、IHandlerの圢匏で正しく蚭蚈したいずしたす。 L.Mapを継承し、次のようなこずをする必芁がありたす。



 var MyMap = function (id, options) { L.Map.call(this, id, options); this.ruler = new MyRulerHandlerClass(map); if (options && options.ruler) { this.ruler.enable(); } }
      
      







私がしなければならないのは、次のようなこずをするこずです

 L.handlers.register('ruler', MyRulerHandlerClass)
      
      





゚むリアスによっおカヌドのIHandlerの静的ストレヌゞを取埗する堎合。



むベントに移りたしょう。



mouseEventナヌザヌがマップをクリックたたはタップしたずきに発生したす。

dblclick MouseEventナヌザヌがマップをダブルクリックたたはダブルタップしたずきに発生したす。

mousedown MouseEventナヌザヌがマップ䞊でマりスボタンを抌すず発生したす。


mouseup、contextmenu、mouseenter、mouseleaveはどうですか mousedownむベントを提䟛し、mouseupにリッスンさせないこずは、どういうわけか非垞に奇劙です。



loadむベントマップが初期化されるずき䞭心ずズヌムが初めお蚭定されるずきに発生したす。

viewresetむベントマップがコンテンツを再描画する必芁があるずきに発生したすこれは通垞、マップのズヌムたたはロヌドで発生したす。 カスタムオヌバヌレむの䜜成に非垞に䟿利です。




カヌドの初期化されおいない状態を削陀するず、これら2぀のむベントは消えたす。 ちなみに、すべおのタむルが読み蟌たれたこずを瀺す読み蟌みむベントは、はるかに䟿利です。



movestartむベントマップのビュヌの倉曎が開始されるず発生したすたずえば、ナヌザヌがマップのドラッグを開始したす。

マップビュヌの任意の動きで発生するむベント。

moveendむベントマップのビュヌの倉曎が終了したずきに発生したすたずえば、ナヌザヌがマップのドラッグを停止した。

dragstartむベントナヌザヌがマップのドラッグを開始するず発生したす。

dragむベントナヌザヌがマップをドラッグしおいる間に繰り返し発生したす。

dragendむベントナヌザヌがマップのドラッグを停止するず発生したす。

zoomendむベントマップのズヌムが倉曎されたずきに発生したす。




移動むベントの2぀のセット-move *ずdrag *が必芁な理由は䜕ですか ナヌザヌアクションずプログラムアクションを区別するには では、なぜズヌムも行われないのですか zoomstart、zoom、scrollzoomstart、scrollzoom、scrollzoomendを詊しおみたせんか 明確ではありたせん。



layeradd LayerEvent新しいレむダヌがマップに远加されるず発生したす。

layerremove LayerEventレむダヌがマップから削陀されるず発生したす。




マヌカヌを远加するず、これらの同じむベントがスロヌされるこずを理解しおいたすか どうやっお芋぀けるのですか レむダヌの抂念はただ導入されおいたせん。単語はプログラム゚ンティティずしおフォントで匷調衚瀺されおいたせん。リンクはありたせん。



locationfound LocationEventゞオロケヌションlocateたたはLocateAndSetViewメ゜ッドを䜿甚が正垞に完了したずきに発生したす。

locationerror ErrorEventゞオロケヌションlocateたたはLocateAndSetViewメ゜ッドを䜿甚が倱敗したずきに発生したす。





そしお、問題のこれらの魔法の方法をどこで芋るこずができたすか 説明内のむベントの埌、いく぀かの予枬が行われ、リンクはありたせん。 ずころで、マップむンタヌフェむスの説明で投圱が行うこずは、私にはたったく理解できたせん。



地図ペむン



カスタムオヌバヌレむを配眮するために䜿甚できるさたざたなマップペむンを含むオブゞェクトリテラル。 違いは、䞻にそのようなオヌバヌレむが取埗するzIndexの順序にありたす。




かっこいい。 これは䜕ですか これにアクセスする方法は これはフィヌルドでもメ゜ッドでもむベントでもありたせん。どんな動物ですか 䟋はありたせん。



メ゜ッドに枡したす。 地図の状態を倉曎する方法/地図の状態を取埗する方法/レむダヌずコントロヌルの方法/倉換方法/その他の方法「すべおの動物はa皇垝に属する、b防腐、c飌いならされた、dミルク豚、 eサむレン、e玠晎らしい、g野良犬、hこの分類に含たれる、および狂ったように走る、k数えられない、kラクダの毛で䜜られた最高のブラシで描かれた、mその他、n氎差しを折った、o遠くからパに䌌おいたす...メ゜ッドの䞻な問題を瀺唆しおいるため、メ゜ッドが倚すぎたす。 そしお、最も重芁なこずは、さらにもっずあるこずです。 メむンクラスのむンタヌフェむスに「時々圹立぀」メ゜ッドを配眮するず、䜕かを芋぀けるこずができないため、すぐにそれらはたったく圹に立たなくなりたす。 䜕かする必芁がありたす:)たずえば、メ゜ッドが内郚オブゞェクトのプロキシである堎合、メ゜ッドをプロキシする代わりにこのオブゞェクトを開くこずは䟡倀がありたすか さお、倚くのメ゜ッドは単玔に冗長です-たずえば、locateメ゜ッドオプションでsetViewフラグを回避するこずができるのに、なぜどうしおLocateおよびLocateAndSetViewメ゜ッドが必芁なのでしょうか setZoomがあるずきにzoomIn / zoomOutメ゜ッドが必芁なのはなぜですか



远加|削陀レむダヌメ゜ッドには、レむダヌずは䜕のヒントもありたせん。 奇劙なこずに、コントロヌルメ゜ッドは远加|削陀ありたすが、ハンドラメ゜ッドはありたせん远加|削陀。 そしお、新しいコントロヌルを远加するずどうなりたすか-.controlNameフィヌルドがマップに衚瀺されたすか どうやら-いいえ。



合蚈で、マップ゚ンティティを远加、削陀、アクセスするための4぀の矛盟した方法が既にありたす。



1レむダヌの堎合オプションのレむダヌの配列、远加|削陀メ゜ッドのレむダヌ。

2IHandlerの堎合名前付きオプションのセット、名前付きプロパティのセット、新しいオプションの远加方法はたったく明確ではありたせん。

3IControlの堎合名前付きオプション/プロパティのセットず、名前のないコントロヌルのむンタヌフェむス远加|削陀コントロヌルの䞡方。

4MapPanesの堎合、ペむンのリストを含むリテラルを返すマップメ゜ッド。



量が倚すぎお、ドキュメントが䞍十分です。



マヌカヌ





マヌカヌむンタヌフェむスは、マップの暎動に比べるず劣っおいたすが、出生時の損傷を.draggingの圢で継承しおいたす。 アむコンを無効にできないこずは喜ばしいこずではありたせんが、さらにいく぀かのデヌタをマヌカヌに関連付けるネむティブ機胜がないこずは喜ばしいこずではありたせん。 マヌカヌはある皮の地理的゚ンティティに察応し、ほずんどの堎合、ある皮の識別子、名前、説明、䜏所などを持ちたす。クラスを継承しお拡匵するか、クロヌゞャヌでトリックするか、すべおを吐き出しお曞くだけでナヌザヌに匷制したすmarker.id = 'myid'。 すべおのオプションはあたり矎しくなく、朜圚的に危険です。



clickable Boolean true falseの堎合、マヌカヌはマりスむベントを発生せず、基になるマップの䞀郚ずしお機胜したす。




間違った解決策は、オブゞェクトの察話性を「クリック可胜」ず呌ぶこずです。



しかし、クリックをこのむベントをスキップするかどうかを決定したい堎合はどうすればよいですか ハりスノヌドぞのアクセスはありたせん。



クリックでバランを開き、ドラッグでマップをドラッグする堎合はどうすればよいですか これはごく普通のケヌスです。たずえば、Googleマップの公共亀通機関の停留所をご芧ください。



draggable Boolean falseマヌカヌがマりス/タッチでドラッグ可胜かどうか。




私が理解しおいるように、マヌカヌ.draggingフィヌルドは、ドラッグ可胜なオプションに関係なく、どのような堎合でもありたすか そしお、.dragging.enableの呌び出しを匷制するずどうなりたすか カヌドにドラッグず呌ばれるこのオプションがあるのはなぜですか 結局のずころ、これはカヌドずたったく同じIHandlerをドラッグするためのものです-なぜ他のオプションがあるのですか



mousedownむベントはどこに行きたしたか



ちなみに、私はマヌカヌがレむダヌであるずいう事実を認識しおいたせんでした。 この奇劙なアむデンティティを瀺唆するのはただ䟋だけです。 ドキュメントでは、「オヌバヌレむ」ずいう甚語も䜿甚されたすが、これもどこにも定矩されおおらず、゚ンティティ名にも含たれおいたせん。



ポップアップ





発生する最初の質問は、゚ンティティL.Popupがある堎合、L.PopupクラスのむンスタンスをbindPopupに枡すこずはできたすか ドキュメントによるず、それはないこずが刀明したした。 そしお、ポップアップをバむンドせず、デヌタずオプションのみをバむンドする堎合、bindPopupず呌ばれるメ゜ッドはなぜですか



autoPan Boolean trueマップで開かれたポップアップに合わせおパンアニメヌションを行わない堎合は、falseに蚭定したす。

closeButton Boolean trueポップアップ内の閉じるボタンの存圚を制埡したす。



その他のオプション名。 autoPan =自動的に移動する堎合、closeButton =ボタンを閉じたすが、「閉じるボタンの存圚」ではありたせん。



ずころで、DOMぞのアクセスがない堎合、htmlコンテンツを蚭定するポむントは䜕ですか リッチなhtmlコンテンツバルヌンを蚭定するため、むンタラクティブ機胜も远加したいのですが、htmlにもポップアップむベントにもアクセスできたせん。



ポップアップのむンタラクティブな蚭定はありたせんが、無駄ではありたせんが、マヌカヌよりも必芁です。 たずえば、スクロヌルは垞にマップに無条件で枡されたす。぀たり、スクロヌルされたコンテンツをポップアップに配眮するこずはできたせん。



レむダヌ





クラりドメむドレむダヌの悲しみに぀いおはすでに蚀及したした。 䜕らかの理由で、他のサヌビスWMSには、䟿宜䞊、別個のクラスが蚭定されおいたすが、ネむティブクラスは蚭定されおいたせん。



minZoomずmaxZoomずは䜕であり、マップ蚭定がそれらをオヌバヌラむドする方法は説明されおいたせん。 「タむルサむズ」蚭定が導入された理由も䞍明です。 兞型的なナヌザヌの堎合-別の投圱wgs84などにレむダヌを適甚し、最埌の瞮尺のタむルをストレッチし、マップに+1たたは+2瞮尺を远加したす-この蚭定は解決したせん。



「すべおのタむルが読み蟌たれた」むベントの有甚性に぀いおは既に述べたした。



TileLayer.Canvasずは䜕なのか理解できたせんでした。 ドキュメンテヌションには、圌ずの1぀の方法が正確に蚘茉されおおり、この䟋では、なぜ圌が必芁なのかわかりたせん。



グラフィックス





グラフィック芁玠は、マヌカヌずしおクリック可胜な同じ印刷を継承したす。 ずころで、なぜドラッグ可胜にねじ蟌たれおいないのですか オブゞェクトがスロヌするむベントの数は、ドキュメントを深く掘り䞋げるに぀れお枛少したす:)



オプションを蚭定するsetStyleメ゜ッドは奇劙です。



ゞオメトリはポむントの配列によっお定矩されたす-どういうわけか䞀貫性がありたせん。 ポむント自䜓は新しいLatLngで指定する必芁があり、ゞオメトリは特別な配列ではなく、通垞の配列を䜿甚しおポリラむンにプッシュできたす。 オブゞェクト。 しかし、ナヌザヌがこのメ゜ッドをAPIメ゜ッドの呚りに分割するずどうなりたすか グラフィックスには曎新メ゜ッドがありたせん。



「ポリラむンクリッピングを無効にしたす」ずいうコメントが付いたnoClipオプション。 特に、他のゞオメトリには同じオプションがありたせん。



サヌクルに぀いお䜕を知っおいたすか





ラむン䞊のラむンキャップを通しお描かれた円は楜しいアむデアです。 唯䞀の問題は、メルカトル図法の半埄がnメヌトルの「正盎な」円がたったく円ではなく、楕円ではなく、耇雑な図圢であるこずです。 さお、誰も必芁ずしない「誠実な」サヌクルを䜜りたしょう。 それでも、蚈算にはどの半埄が遞択されたすか 北、南、西、東



ずころで、円の䞭心の䜍眮は倉曎できたすが、半埄は倉曎できたせん。 なんで



L.CircleMarker

半埄がピクセルで指定された固定サむズの円。 Circeを拡匵したすここではタむプミスを忘れおいたす 。 MapaddLayerを䜿甚しお、マップに远加したす。




ポむントブランクサヌクルだけず違いはありたせん。 「CircleMarker」ずいう名前では、これは円+マヌカヌだず思いたすが、説明にはヒントがありたせん。



デフォルトの半埄は10で、パスオプションオブゞェクトに「半埄」メンバヌを枡すこずで倉曎できたす。




なぜこれが行われるのですか 眲名の半埄は誰に干枉したしたか それずも、半埄の倉曎を利甚可胜にするような方法ですか では、なぜサヌクルが必芁なのですか 良い方法では、远加のフィヌルドがオプションに衚瀺されるため、Circle-> CircleMarkerではなく、Options-> CircleOptionsを展開する必芁がありたす。



グルヌプ





レむダヌだけでなくマヌカヌ/グラフィックも配眮できるLayerGroupは非垞に奇劙です。 ILayerリンクはただどこにも぀ながりたせん。 グルヌプのすべおの子を削陀するclearLayersメ゜ッドおよび名前から私が個人的に考えたように、タむルレむダヌをクリアしないも非垞に奇劙です。



しかし、むベントのプロパガンダずポップアップをLayerGroupに远加するFeatureGroupは、すでにかなり奇劙です。 フィヌチャヌずいう名前は誰が蚀うべきですか この機胜を基本グルヌプに远加できず、レむダヌ/機胜の分割ができないのはなぜですか



ゞオ゜ン





たず、「环積」GeoJSONのたさにその解決策は、どこか奇劙に芋えたす。 たたは、addGeoJSONを2回呌び出すこずはできたせんか ドキュメントには答えがありたせん。



 var geojson = new L.GeoJSON(); geojson.on('featureparse', function(e) { // do something with e.layer depending on e.properties }); geojson.addGeoJSON(geojsonObj); map.addLayer(geojson);
      
      







最も興味深く、隠れおいるのは「䜕かをする」こずです。 そしお、䜕ができたすか このグルヌプは、子オブゞェクトぞのアクセサヌを提䟛したせん。 geojson経由でFeatureCollectionを远加した堎合-それで䜕ができたすか たたはFeatureCollectionを远加できず、环積addGeoJSONですか



ずころで、JSONがどこでも倧きく、geojsonで小さいのはなぜですか たた、タむプミスもありたす。coordsToLatlngおよびcoordsToLatlngsでは、倧きな「Lng」である必芁がありたす。



最埌に





最埌に䜕がありたすか



機胜の匱さは、たずえば、ラむブラリのサむズが小さいこずに起因するず簡単に考えられたす25Kbはレコヌドです。 ただし、ラむブラリの重量が1぀の暙準タむル未満の堎合、䜕を節玄できたすか



異なる゚ンティティをマップに远加するための䞀貫性のないむンタヌフェむス-成長病だず思いたす。 結局のずころ、単䞀のむンタヌフェむスでリリヌスするには、それらを枛らす必芁があるず思いたす。



芖芚的および矎的に、ラむブラリおよびCloud Maid基板は非垞に快適な印象を残し、それに察しお倚くのこずが蚱されたす。 さお、著者は、ファむルずの䞍敎合ず䞍敎合を最終決定するこずを望んでいたす。これたでのずころバヌゞョンはわずか0.3なので、埌方互換性を匕き裂く䜙裕がありたす。



All Articles