問題タブ [geoxml3]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
layer - クリッカブル マーカー レイヤーの背後に完全に位置する Unclickable geoxml3 シャドウ レイヤーを取得できますか?
クリック可能なマーカーとそうでないマーカー シャドウを使用するために、2 つの geoxml3 パーサーを設定しています。1 つはマーカー用、もう 1 つはシャドウ用です。それは機能しますが、2 つのレイヤーを使用することで、1 つのマーカーの影が別のマーカーに落ちないようにすることも期待しています。微妙なことですが、視覚的に垂直なマーカーに視覚的に水平な影を重ねると、3D 効果が損なわれます。マーカーのクラスターでは、マーカー ステムの間で物事がかなり暗くなります。
これで、アイコンが北から南にレンダリングされることがわかりました。そのため、アイコンは重なっているアイコンの上から南に見えます。私が期待していたのは、各パーサーが独自のレイヤーを作成するということでした。つまり、マーカー レイヤーは先行するシャドウ レイヤーの前に完全に表示され、どのマーカーにも影は落ちません。ただし、パーサーが両方の「レイヤー」を同時に北から南へと作業しているように見えます。ポイントごとに影の画像をレンダリングし、対応するマーカー画像をレンダリングしてから、次のポイントに移動するようです。次のマーカーが前のマーカーの南西にかなり近い場合、その影のイメージはその前のマーカーの上に落ちます。
ある種の錯覚が見えていないことを確認するために、演習として、いくつかの大きな重なり合う影付きマーカーを使用してマップを作成しました。私が望むのは、画像を下から上に重ねることです。
- 東グリーンランドの影
- グリーンランド シャドウ
- 東グリーンランド マーカー
- グリーンランドマーカー
代わりに、階層化されているように見えます。
- 東グリーンランドの影
- 東グリーンランド マーカー
- グリーンランド シャドウ
- グリーンランドマーカー
グリーンランド シャドウが東グリーンランド マーカーに落ちています。
では、すべてのマーカーをまとめて、すべての影の前に表示することはできますか? 現時点では追跡できませんが、クリックできない「シャドウ レイヤー」のようなものを含む標準の Google マップ レイヤーのリストをどこかで見たと思います。標準のアイコンを使用して google.maps.KmlLayer を作成すると、API は対応する影の画像を自動的に取得し、それらを、私が要求した KmlLayer の背後に完全に位置する影レイヤーであると私が推測するものに配置します。
現在のプロジェクトでは、目印にプログラムでアクセスできるように、geoxml3 マーカー レイヤーが必要です。実際には 32x32 のアイコンで作業できるので、この場合は影に KmlLayer を使用するようにフォールバックできますが、将来の参考のために、クリック可能なオブジェクトの背後に完全に配置される、クリックできない geoxml3 レイヤーのオプションがあると便利です。層。それを行う方法はありますか?それは、その Google マップのシャドウ レイヤーに何らかの方法でレンダリングすることでしょうか?
スクリプトは次のとおりです。
2 つの KML ファイルは、IconStyles を除いて同一です。
対:
google-maps - geoxml3 で Google マップに kmz ファイル データをレンダリングする
私は geoxml3 の kmz ブランチを使用して、kmz ファイルから地理データを簡単にレンダリングします。しかし、うまくいきません。目印は正常にレンダリングされていますが、オーバーレイが表示されません。これは私のコードです:
そして、これはkmlです:
両方の png ファイルが kmz に含まれていました。また、コンソールにエラーや警告はありません。誰でも助けてもらえますか?
PS私の英語でごめんなさい。
javascript - geoxml3 を使用して Google マップでいくつかの目印を非表示/表示する
3 つのレイヤーを含むマップをロードします。
すべてのレイヤーを非表示にせずに、目印を非表示にできるのは誰ですか?? 非表示にする必要があるすべてのポイント/ポリゴンを検出するために、KML に追加情報を追加しましたが、それが最適な方法かどうかはわかりません。それは問題ありませんが、たとえば使用する KML でその TAG をどのように検出できますかgeoXml.docs[1].markers[xx].setVisible(false);
(私の場合、 where を非表示にしたい"Codigo"-tag='PRA-239'
)
file2.kml
javascript - GoogleマップのgeoXML3:目印を独自のイベントリスナーに渡しますか?
イントラネット プロジェクトで作業しているため、KML ファイルを外部から利用できません。これは、XML を Google マップに解析するために geoXML3 ライブラリに依存していることを意味します。ただし、イベント リスナーに関するドキュメントが不足しているため、イライラさせられます。クリックリスナーを呼び出して、geoXML3の目印を渡したいと思います。次のことをしようとしていますが、ループclickListener
で処理された最後のポリゴンを.afterParse
p
Google Maps API の KML サポートを使用していた場合は、これを実行してポリゴンをリスナーに渡すことができます。
(より望ましい) 正しい geoXML3 目印を に確実に渡す方法clickListener
、または (あまり望ましくない) geoXML3.parser
I can bind a click event toのプロパティkmlMouseEvent
を使用して、Google Maps API kml パーサーを使用する方法を受け取る方法はありますか? 最終的には、ポリゴンのスタイルを変更し、配列内で選択/選択解除されたことを追跡できるようにする必要があります。
google-maps-api-3 - geoxml3 の中心点を更新する
geoxml3 を使用して読み込みとスタイルを設定しました。ここで、中心点とズームレベルのみを変更してマップを更新したいと考えています。どうすればこれを達成できますか。
上記が読み込まれたら、onclick を使用して変更を適用します。私のonclickは次のjs
関数を実行します
これは元のスタイルなどを保持しません。
google-maps - geoxml3 で Google マイマップを使用する
Google の My Maps のデータを geoxml3 で使用する最良の方法は何だろうと思っています。現時点では、マイ マップからエクスポートできるのは kmz データ形式のみです。エクスポートした kmz を geoxml kmz バージョン ( http://geoxml3.googlecode.com/svn/branches/kmz/ ) で使用しましたが、機能しませんでした (ただし、Google Earth に読み込んで再度保存すると機能しました) kmzとして!)。また、マイマップへのネットワーク リンク (これが一番いいと思います) で試しましたが、成功せず、「XMLHttpRequest はhttp://www.google.com/maps/d/kml?mid=を読み込めません」というメッセージが表示されました。 ……」 . Googleはこれを許可していないようですか?
ベルリンラルフからの最高の挨拶