
どなたかご協力頂ければ幸いです。
GoogleのAPIを利用して自宅の屋根の面積を
求めたいのですが、方向性ややり方をご存じの
方いらっしゃればご教示願えれば幸いです。
多少の英語はわかりますので、英語ページの
参照などもまったくダメというわけではありません。
サンプルコードなどあればとても助かります。
どちらかというと営業畑の人間ですが
エクリプス3.7とアンドロイドSDKの開発環境は
用意しています。
ここが参考になるのかと思ってますが
途中からFlashに切り替わり、ロジックがわからないのです。
http://www.smart-house.bz/shindan/
また、面積も算出できません。
なんとか、面積を算出したいので、お分かりになるかた
いらっしゃればどうか、教えてください。
(自宅の設計図面がないので.....)
No.4ベストアンサー
- 回答日時:
#1~#3です。
>緯度・経度を取得するロジックを検討いたします
#1の回答から、何度も触れているように、google mapは緯度・経度を軸に作成されていると思われます。
それなので、イベントを取得すれば、そのまま緯度・経度を取得できるようになっています。
http://code.google.com/intl/ja/apis/maps/documen …
もう一度、最初から順にゆっくり読み直していただければ、私の言いたいことが通じるかもしれません。
すみません。
http://code.google.com/intl/ja/apis/maps/documen …
で、目が覚めました。
なんども同じような質問をしてしまい、恐縮です。
本当にありがとうございました。
感謝いたします。
No.3
- 回答日時:
#1、#2です。
なんだか、あまり回答を読んでらっしゃらないような気もしますが…
すでに、#2に書きましたように、
1)マップ上のクリックされた点から緯度、経度を取得し
2)地表面上の多角形の座標に変換
(面積を求めるだけなので原点はどこでもかまわない)
3)クリックされた点を結ぶ閉多角形の面積を算出
4)傾斜を考慮して、3)の面積を補正
のような手順で、精度を別にすればいちおう可能ではないかと思います。
ほぼ実寸計算みたいなものなので、縮尺というものが入り込む余地はないと思いますが…
*私が「精度」といっているのは、マップの緯度・経度の精度(=距離精度)のことです。
(ほとんどこれで計算精度が決まることになりますし、精度が悪ければ実用的でなくなるかも知れません。)
3)の面積の求め方は以下をご参考に
http://natu.txt-nifty.com/natsutan/2004/06/post_ …
http://www5d.biglobe.ne.jp/~noocyte/Programming/ …
たびたびすみません。丁寧な解説頂き感謝です。
面積の出し方のURLはとても参考になります。
また、下記、プロセスを整理して頂きすっきりしました。
1)マップ上のクリックされた点から緯度、経度を取得し
2)地表面上の多角形の座標に変換
(面積を求めるだけなので原点はどこでもかまわない)
3)クリックされた点を結ぶ閉多角形の面積を算出
4)傾斜を考慮して、3)の面積を補正
おそらく3)でのイベントの取り方がプログラムの一つの鍵なのかなぁと思っています。
それと、傾斜のデータをどうするかという点です。アプリをつくる場合は
多くの方にもご利用いただきたいという希望もあるので、予め
「急」「やや急」「一般的な屋根角度(五寸勾配約27度程度)」「平らに近い」「平ら」
のような図と文言を用意して補正のための係数をその選択肢に持たせることになると思います。
(質問に書きました参考URLのような選択肢です。)
クリックを重ねて緯度・経度を求めるのはブラウザ(クライアント)側で発生するイベントなのでjava scriptでイベントを取得してgoogleAPIに一度データを渡して、再度、サーバーから緯度経度の値をもらい、それを仰るとおり面積に直し、(ここもプログラムの要ですね)、傾斜でも補正、という手順でだと理解しました。緯度経度がわかればそこから面積の算出はライブラリがありそうな気もしています。
fujillinさんが前述されたとおり確かに緯度、経度に関しての誤差がありそうですが
こんなサイトがあり、参考になりそうな気がしましたので緯度・経度を取得するロジックを
検討いたします。 http://api.knecht.jp/geocoding
いろいろと教えて頂き感謝申し上げます。
No.2
- 回答日時:
#1です。
>現在の縮尺寸法」的な表示がでないので計算が難しい気がします。
#1では、出力をもとに算定する考えを説明しましたので「縮尺」の概念を用いましたが、画面表示やプリントアウトはその出力機器に依存するところがあるので、データ自体には縮尺という概念がないのではないでしょうか?
確かに、表示のスケールの指標としてgoogleではzoomが使われているようですがこの値は直接には縮尺とは無関係な値になっています。(実際の地図の表示にはバースケールが表示されるので、換算は可能かと思われます。(多分以下で述べる方法かも?))
画像データと計算だけから求める場合は、google mapは緯度、経度を基本としている地球規模でのmapですので、縮尺などを考えずともこの情報から計算すればよいのではないでしょうか?
#1でも述べましたように、地球は正球体ではないので、計算は多少複雑になるかとは思いますが。
<googleでの座標系>
http://ja.wikipedia.org/wiki/%E6%B8%AC%E5%9C%B0% …
http://en.wikipedia.org/wiki/World_Geodetic_System
(下のリンクは英語です。私にはわかりません。)
<緯度、経度と距離の関係は以下>
http://ja.wikipedia.org/wiki/%E7%B5%8C%E5%BA%A6
http://ja.wikipedia.org/wiki/%E7%B7%AF%E5%BA%A6
実際の計算では、一度、緯度から想定半径を算出してしまえば、対象が地球に比べて充分小さいと考えられるので、あとはその半径での球体表面での計算と考えても問題はないと思われます。
とはいうものの、このような面倒な計算を自分でしなくても、googleではdistanceを求めるサービスも提供されていますので、座標から距離を求めることが出来そうです。(実際に確認はしていません。なぜか、日本語のリファレンスにはこの機能が紹介されていないみたいですが…)
http://code.google.com/intl/en/apis/maps/documen …
(↑英語なので、読んでいません。あしからず)
地図をクリックした時の、位置と緯度・経度との関係などについては前述のリファレンスをご参照ください。
ただし、#1でも述べましたが精度がどのくらいかを先に確かめてみた方がよろしいかも知れません。
>(アプリ)を構築したいと思います。
であれば、(↑)の内容ぐらいはすでにお調べかも知れませんが、とりあえず。
補足ご回答頂き感謝です。
「実際の地図の表示にはバースケールが表示されるので、換算は可能かと思われます。」
確かに、ご今教示のとおり、画面左下にスケールは発見できました。
このスケールをヒントに何とか面積を割り出す方法を考えています。
また、精度についてですが、傾斜も考えた厳密な正確さ、というよりは1657mm×858mm(1.66mx0.86m≒90x180)のソーラーパネルが何枚のるかということが求めたい値ですので、やはりおっしゃるとおりgoogleマップ上の画面のスケールを基に大まかな屋根の面積を求め(この際、傾斜は考慮しないもとする)
その面積をパネルの面積(1.62m2)で割る、というシンプルな計算で求めたいと思います。
できれば、それを、アルゴリズムかしたいのですが....
住所の特定→クリックで屋根の四角形もしくは三角形の角をクリック→その面積をスケールを基に求める→パネルの面積で割る。→パネルの枚数を算出して、金額に換算する。
という感じです。
アプリ開発もかねて、自分でも勉強してみますが、なにか、ヒントになることが
あれば、またご教示頂ければ助かります。
No.1
- 回答日時:
>自宅の屋根の面積を求めたいのですが、
自宅の面積を出すだけなら、わざわざコードを組む必要はないのではないでしょうか?
1)単純にgoogle mapを垂直投影の写真と見做して、出来るだけ拡大して出力したものを用意。
この写真の縮尺を求めることができれば、面積は算出可能です。
2)屋根の一辺を地上で実測、あるいは、道路上の目印となる2点間の距離を地上で実測。
3)写真の対応する部分の寸法と、2)の実測値との比率から縮尺を求めます。
4)屋根の平面投影面積(斜めに計った実際の面積でなく)真上から見た面積は、
「写真上での面積」×「1/縮尺」×「1/縮尺」で求めることが可能です。
5)屋根の実面積(勾配がある場合の実際の面積)は勾配を、想定して4)で求めた
面積を補正することで、ある程度の制度で算出が可能でしょう。
ご提示のサイトも上記とほぼ同様の考え方で算出していると想像できます。
1回の算出のために、わざわざAPIを調べてコードを作成するよりも、上記の方法のほうが精度の高い値を求められると考えられます。
というのも、googleの距離の精度は地球規模で求めているので、それほど高いものとは思えません。
地球が正球体でないことの補正などは行なっているようですが、緯度・経度の算出精度そのものもどのくらいなのか不明ですが、それほど高いものとも思えません。
http://www.google.com/support/forum/p/maps/threa …
http://www.google.com/support/forum/p/maps/threa …
上記の実測と併用する方法であれば、写真がボケている分の精度は損なわれますが、縮尺に関しては実測との比率で求めることが可能なので、精度が上がるのではないかと想像します。
さらに、googleの写真を用いなくても、建物の外周壁を地上で実測し、さらに軒の出などを測ることで実測値から屋根の面積を求めることもできそうな気がします。そのほうがもっと正確な値を算出できる可能性が高いかと思われます。
(軒の出は実測できなくても、ある程度実測に準じた計測が可能ではないかと想像します。)
どうしても、コードを組みたい場合は、リファレンスがありますのでそちらをご参考になさるとよろしいかと思います。
http://code.google.com/intl/ja/apis/maps/documen …
ご回答頂きありがとうございます。
ますは実測値との比較ですね。
google earthの縮尺データはどのように
入手するのかお分かりになりますか?
ゼンリン地図などですと、25000分1とか5000分の1とか
の縮尺寸法表示が地図の右下などに出ますので、計算が比較的しやすいと存じますが
google mapは「現在の縮尺寸法」的な表示がでないので
計算が難しい気がします。
比較するものがないと値を求められないという意味でやはりなにかしらの実測値が必要なのでしょうか。
できれば自宅以外の方にご希望があれば太陽光パネルが何枚乗るか
測ってあげたいので、やはり、参照サイトのような、しくみ(アプリ)を
構築したいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 数学 賃料と専有面積のデータが60部屋分ほどがあり、 賃料÷専有面積(=1㎡あたりの賃料)の数式で計算する 2 2023/02/18 20:33
- 駐車場・駐輪場 カーポート契約解除についてアドバイスお願いします。 5 2022/08/15 16:13
- 数学 写真について質問なのですが、 ①の図の面積Sを求めるとき、②と③の図の面積、つまりS=S2+S3で求 4 2023/04/27 17:20
- 相続・譲渡・売却 境界確定、これは一般的なやり方ですか? 6 2023/01/24 22:10
- Safari(サファリ) インターネットの画面を左右に寄せて閲覧する方法を教えてください 1 2022/05/18 21:03
- 工学 至急お願いします。 誘電体と接する導体表面に面密度のσ正の電荷を一様に与えると、境界面には応力が発生 1 2022/07/31 02:27
- 数学 積分の計算にてこづっています。2曲線の面積を求める問題なのですが [-1/2cos2x+cosx]上 4 2022/06/25 12:55
- 予備校・塾・家庭教師 フリーランスで英語指導をされている方、お詳しい方などにお聞きしたいです。 自室にて知人の中高生の子供 2 2022/06/22 09:37
- 中途・キャリア 相談に乗って下さい。 4 2022/09/23 21:23
- 一戸建て 吹き抜けのエアコン設置と選定について 6 2022/05/13 17:05
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VB6でXMLを作成すると変になります
-
Google Mapsを利用して屋根の面...
-
エクセルVBA 作業後に選択範囲...
-
エクセルで条件をつけて図形を...
-
ワードで、グレーの部分しか入...
-
VBAでのユーザフォームの表示有...
-
別のフォームで記述している関...
-
エクセル マクロ 別シートから...
-
Excel VBA 選択範囲の罫線色の...
-
ツールバーの「ファイル(F)、...
-
メニューバーのイベントが2回...
-
ステップモードの動作確認方法
-
Sub Auto_Open() 実行されない
-
EXCELで選択範囲の中で、上から...
-
ExcelVBAで毎月月初の最初にBoo...
-
エクセルで非表示行を抜かして...
-
プロアクションリプレイmax2の...
-
Excelで、チェックボックスにチ...
-
ascW関数の結果がおかしい
-
C++Builderのエラー...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VB2010において面積の算出
-
GPS位置情報で2点の中間地点の...
-
x,y座標から緯度経度へ変換
-
Google Mapsを利用して屋根の面...
-
生コンの立米数の出し方
-
簡単な地図の作り方
-
GoogleMapAPI ズームレベルと縮...
-
緯度と経度をグーグルMAPに入れ...
-
2点間の距離をミリ秒単位で求め...
-
PHPで最も近い緯度経度をDBデー...
-
エクセルで条件をつけて図形を...
-
エクセルVBA 作業後に選択範囲...
-
ワードで、グレーの部分しか入...
-
別のフォームで記述している関...
-
VBAでのユーザフォームの表示有...
-
エクセル マクロ 別シートから...
-
Sub Auto_Open() 実行されない
-
Excel VBA 選択範囲の罫線色の...
-
エクセルで非表示行を抜かして...
-
ascW関数の結果がおかしい
おすすめ情報