2

Google Earth では、"Sunlight" レイヤーを使用して、特定の DateTime で地形によってキャストされた影を表示できます: http://i.stack.imgur.com/YFGMj.png

ただし、API から日光/光度/影/その他の値にアクセスする方法を見つけることができませんでした。

Lat、Long、DateTime を指定して、あるエリアに日光が当たっているかどうかを判断する方法を探しています (地形の影を考慮に入れると、単純な日の出と日の入り時刻を提供するサービスが無数にありますが、これらは地形を考慮していません)。 . これは Google Earth で手動で行うことができますが、プログラムによる方法を探しています。

考え、アイデア、リードをありがとう...

4

2 に答える 2

3

これは古い質問だと思いますが、私が行ったばかりのグーグル検索で浮上し、フォーカスが気に入りました.

経度と緯度のタプルで指定された地球上のポイントが特定の時間に太陽にさらされているかどうかをプログラムで判断する方法を探しているので、今はお手伝いできません。しかし、これが多くの人が必要とする機能であることがわかった場合、私はそのような API を非常に簡単にセットアップできる立場にあります。suncurves.com では、地形を考慮して日の出と日の入りの時間を計算しています。これまでに設定したソリューションは、ユーザーが住所を検索するか、地図上にアイコンをドラッグ アンド ドロップして、地形を考慮した正確な場所の年間の日の出と日の入り時刻を取得できる Web インターフェースです。データへの API を作成したいと考えていますが、この API のスコープの明確な仕様はまだありません。あなたが求めていることは、私たちがする必要があることを要求します:

  1. 経度と緯度の視点から見かけの地平線を計算します。これは、ポイントの周囲 30 ~ 50 km の検索半径で地形データをスキャンすることを意味します。
  2. 指定された時刻における太陽の位置を計算します。
  3. 指定された時刻における太陽の位置を計算します。大気の屈折を考慮して、ポイントを囲む地形によって与えられるように、太陽が地平線の下にあるか上にあるかを判断します。

これはフランスのシャモニーの例で、一般的な平地バージョンの日の出、日の入り時間はほとんど価値がありません。

http://suncurves.com/v/7/

于 2014-02-28T11:25:28.263 に答える
0

特定の時間に AOI が太陽または日陰にあるかどうかを判断することについてはわかりませんが、API を使用して SUN をオンまたはオフに設定できます。

GESun.setVisibility

編集:

GE プラグインを使用して、目的の AOI 緯度/経度でビューが真上にあり、真下を向いている LookAt を作成します。実際の AOI のサイズに応じて、ビューをできるだけ地面に近づけないようにします。

次に、スクリーンショット/画像をキャプチャします-これはGEでは不可能だと思います(知りたい方法を誰かが知っている場合)ので、javascriptを使用して取得してください-SOでこのQを見つけましたいくつかの洞察を提供します.

GESun.setVisibility をオンにしてスクリーンショットを撮り、次にオフにして別のスクリーンショットを撮ります

2 つの画像の暗さ/明度などを比較し、AOI が日陰にあるかどうかを判断します。LookAt が取得された高さなどに応じて、プログラムが画像の残りの部分と区別できるように、AOI を何らかの Polygon で囲む方がよい場合があります。

画像を比較する方法についてのアイデアはありませんが、SO でもう一度検索すると、これ (PHP ImageMagick で COLOR_BLACK の値を見つけると思います) とこれ (Color Buckets のアイデア) が得られまし。選択した方法によっては、比較を行う前に画像を白黒に変更すると役立つ場合があります。

于 2012-10-07T21:18:32.407 に答える