41

サーバーがユーザーから要求されたマップの一部のみを送信してパフォーマンスを向上させることを可能にする Google マップの背後にあるテクノロジの名前は何ですか?これを処理するライブラリはありますか?

4

13 に答える 13

29

このテクノロジは、一般的にマップ サーバーとして説明できます。マップ サーバーは、地球全体をカバーする事前に生成されたマップ タイル画像の大規模なセットから、要求された場所のマップを生成します。マップ サーバーは、この上に他のデータベースのデータをオーバーレイする場合があります。マップ ビューアー クライアントと地理データベースの組み合わせは、伝統的に地理情報システム(GIS) と呼ばれます。

誰でもGoogle Maps APIを使用して Google マップを埋め込む Web アプリケーションを作成できます。独自のマップ サーバーをデプロイする場合は、優れたオープン ソースのマップ サーバー ( MapServerと呼ばれる) もあります。

于 2008-10-15T13:25:25.580 に答える
9

前述のとおり、Google はこれらの 256x256 タイルをすべて生成し、関連するタイルのみを提供しています。あなたのコメントから、これらのタイルを生成する何かを探しているようです。画像をタイルに切り刻むコードを書いた人が何人かいます為に。

于 2008-11-26T22:35:23.157 に答える
2

これは、OpenSource、 http://www.geoserver.org http://www.openlayers.org 、そして最後になりましたが http://geowebcache.org/で試してみることができるものです 。

数時間でmaps.googleと同様のことを行う最小限の環境をセットアップできるはずです。

于 2008-10-17T19:16:50.313 に答える
2

EveryBlock.com の創設者の 1 人による、Web ベースのマップを生成するためのオープン ソース スタックの概要を次に示します

于 2008-12-01T07:53:41.330 に答える
2

独自の画像でGoogle Maps APIを使用することもできます。もちろん、マップである必要はありません。任意の画像にすることができます。これにより、ユーザーは Google マップのようにドラッグしてズームできるようになります。

于 2008-10-22T16:29:52.207 に答える
2

Google マップ ページのリンクを見ると、次のようになります。

http://maps.google.com/maps?f=q&hl=en&sll=37.0625,-95.677068&sspn=53.345014,88.769531&ie=UTF8&ll=41.226264,-81.454246&spn=0.012507,0.021672&z=16

ページ上の JavaScript コードとサーバー コードは、リンク内の数値を使用して、表示しているマップの場所、ズーム レベル、および表示ウィンドウのサイズを決定し、ブラウザに送信するタイルを決定します。

マッピング データを提供できる商用ライブラリと、データを表示およびナビゲートするためのツールがあります。私が以前に使用したのはGeomicroです

于 2008-10-15T13:24:38.357 に答える
1

基礎となる分野の総称はGISです。

一般的な好奇心から詳細を求めていますか、それともプロジェクトに特定の技術的ニーズがありますか?

于 2008-12-01T09:14:35.380 に答える
1

Google は、これらの画像を販売するサービスから高解像度の衛星写真を取得し、この画像を保存してトリミングし、特定のポイントを見たときに必要な画像のみを提供します。つまり、ズームインおよびズームアウトすると、正方形のタイルが表示されることに気付きましたか? これらは、Google サーバーが提供しているものです。

また、Google ファイル システムと MapReduce を使用して負荷を処理する方法も考慮する必要があります。

于 2011-06-11T15:59:04.143 に答える
0

質問に答えるのではなく、情報を広げてください。Microsoftには、Silverlight用の「ディープズーム」と呼ばれるものがあり、そのような効果を簡単に実行できます。

無料のコンポーザーで、写真(または1つの大きな写真)を並べて表示し、その他の設定を行います。次に、サブフォルダー内の多数の小さな写真(ズームレベルごとに1つのフォルダー)に分割します。そして、それらをスムーズに利用できるページを作成します。

それについての良いブログエントリ: http ://weblogs.asp.net/jgalloway/archive/2008/03/21/why-silverlight-2-deep-zoom-really-is-something-new.aspx

于 2008-12-01T08:42:40.777 に答える
0

私は、非常に大きな歴史的な計画とスケッチのクロス ブラウザー ビューアーに取り組んでいます。http://www.cadmaps.com/gisblog/?p=7で見つけた最初のステップ (古いブログ) で、 画像のピラミッドを理解するのに役立ちます (それが Google マップで動作します)。

「タイル」を使用して、testImage_0001111100.png のような多くの画像を生成します。0001111100 は、つまり、5 番目のズーム レベルであり、画像ピラミッド内の x / y 位置です。ほとんどの計算 (隣接画像、画像スタックの上下) は、ajax 要求によって呼び出される php によってサーバー側で行われます。

私は現在、スムーズなシフトとズームの問題 (解決不可能ではない) に苦しんでいます。それが私の問題ですが、記事を読んでください。

于 2008-12-10T15:55:43.597 に答える
0

Google マップと Google Earth では、XML の特別な変形である KML (「キーホール マークアップ言語」) として知られるものを使用します。最初の地理追跡衛星に敬意を表して名付けられました。このマークアップを使用して特定の緯度と経度の座標をジオコーディングすることにより、Google Earth の場所に関する情報を保存できます (そして、最終的には Google マップに反映されます)。高度を含めることもできます。

于 2008-10-15T14:58:45.220 に答える
0

これは、(AJAX などを使用して) 個別にダウンロードされる正方形のチャンクで構成される巨大なイメージです。ある種の内部Googleライブラリ(GWTでもある可能性があります)によって行われていると思います。

このトピックの詳細: http://blog.grimpoteuthis.org/2005/02/mapping-google.html

于 2008-10-15T13:22:17.380 に答える
-1

AJAXを使用すると、JavaScript からページの一部を更新できます。基本的に、JavaScript は Web サーバーにリクエストを返し、既存のページの一部を結果に置き換えます。

JQueryは、これを容易にするライブラリの 1 つです。Googleが何を使用しているかはわかりません。

于 2008-10-15T13:22:16.600 に答える