2016-06-28 6 views
0

私のアプリのユーザーが(ポリゴンとして)「テリトリ」を定義できるようにしようとしています。それから、他の人はポイント(緯度と経度)を照会して、そのポイントが入る地点を決定することができます。GeoAlchemy2のドキュメントから、これは仕事のための良いツールになると判断しました(私のアプリはcurently devであるので私は他の提案にオープンしています。私はフラスコ、フラスコ - sqlalchemy、およびSqliteをdevで使用しています... Postgresのprodでの計画です。ng-map GeoAlchemyへの描画マネージャー

私の検索で、ng-map、特にここに表示されている描画マネージャーの指示につながります。 https://ngmap.github.io/#/!drawing-manager.html。この例を変更すると、google onMapOverlayCompletedオブジェクトにアクセスできます。そこにはlatLngオブジェクトがありますが、それをデータベースに残すことができるものに変換する方法がわかりません。私はJSでこれを行うと仮定すると、私は私のFlask APIに送信するJSONにダンプすることはできますか?

誰でも正しい方法を教えてもらえますか?私はより良いアイデアを聞くこと以上に喜んでいます。

ありがとうございました。ここで

はその例からいくつかのコードです:

var app = angular.module('myapp', ['ngMap']); 
app.controller('DrawingManagerCtrl', function() { 
    var vm = this; 
    vm.onMapOverlayCompleted = function(e){ 
    console.log(e); 
    }; 
}); 

は、どのように私は「E」からポリゴンを得ることができますか?

+0

となります。このエラーについて考えてみてください。 Uncaught TypeError:未定義のプロパティ 'onMapOverlayCompleted'を読み取ることができません –

答えて

0

https://stackoverflow.com/a/38827199/785985点の配列を取得する方法については、この回答を確認することができます。

e.overlay.getPath().getArray(); 

次に、配列を反復して各項目の緯度と経度を取得できます。したがって、コードは

vm.onMapOverlayCompleted = function(e){ 
    console.log(e); 
    e.overlay.getPath().getArray().forEach(function (position) { 
    console.log('lat', position.lat()); 
    console.log('lng', position.lng()); 
    }); 
} 
+0

このエラーについて考えてください。 Uncaught TypeError:未定義のプロパティ 'onMapOverlayCompleted'を読み取ることができません –

+0

@Llg私の関数をGMarshのコードと共に使用していますか?彼がしたように 'vm'変数を定義する必要があります:' var vm = this; '。 –

関連する問題