1

GISデータのLat/LONが必要です

http://www.mngeo.state.mn.us/chouse/land_own_property.htmlのデータファイルがあり ます

.dbf、.prj、.sbn、.sbx、.shp、および.shxの形式で指定されます

.dbfに表示されます

PIN, Shape_area, Shape_len
PARC_CODE   Parcel Polygon to Parcel Point numeric  2  
            and PIN Relationship Code 

と.prjで

PROJCS["NAD_1983_UTM_Zone_15N",GEOGCS["GCS_North_American_1983",DATUM["D_North_American_1983",SPHEROID["GRS_1980",6378137.0,298.257222101]],PRIMEM["Greenwich",0.0],UNIT["Degree",0.0174532925199433]],PROJECTION["Transverse_Mercator"],PARAMETER["False_Easting",500000.0],PARAMETER["False_Northing",0.0],PARAMETER["Central_Meridian",-93.0],PARAMETER["Scale_Factor",0.9996],PARAMETER["Latitude_Of_Origin",0.0],UNIT["Meter",1.0]]

各郡のポリゴンポイントも知っています

polygons points 
Anoka 129139 129138 
Carver 38134 38133 
Dakota 135925 150294 
Hennepin 422976 446623 
Ramsey 149169 168233 
Scott 55191 55191 
Washington 98915 103915 

そして私は境界座標を知っています

-94.012 
-92.732 
45.415 
44.471

GIS用のソフトウェアアプリケーションはたくさんあるようです http://en.wikipedia.org/wiki/List_of_geographic_information_systems_software

しかし、私は何をする必要がありますか?

私はすべての家の緯度と経度が欲しい

私のためにこれを行うライブラリはありますか?必要なデータは何ですか?

4

3 に答える 3

1

上記のファイル拡張子は、ファイルがESRIシェープファイル形式であることを示しています。Javaでは、GeoToolsライブラリを使用してそれを読み取ることができます。

以下の例は最初の行を示しています。より完全な例をインターネットで検索してください。

// init shapefile
        File shpFile = new File(fileName);
        if (!shpFile.exists()) {
            LOGGER.fatal(fileName + " does not exist");
        }

        Map<String, URL> connect = new HashMap<String, URL>();
        FeatureCollection collection = null;
        FeatureIterator iterator = null;
        try {
            connect.put("url", shpFile.toURI().toURL());

            DataStore dataStore = DataStoreFinder.getDataStore(connect);
            String typeName = dataStore.getTypeNames()[0];
于 2012-11-29T01:59:23.690 に答える
1

GISソフトウェアを1つインストールする必要があると思います。あなたはオープンソースのQgisを試すことができます。

なぜなら、第一に、あなたのデータは長い/緯度(地理的)座標にないからです。シェープファイルの.prj部分(はい、同じ名前のすべての.dbf、.prj、.sbn、.sbx、.shp、および.shxファイルはGISの1つのシェープファイルです)は、データが投影座標系にあることを示していますNAD1983UTMゾーン15N。したがって、データを地理システムに変換する必要があります。これは、GISで、またはproj.4ライブラリによってプログラムで簡単に実行できます。(Qgisでシェープファイルをプロジェクトに追加し、目次でそれを選択し、マウスの右ボタンで[名前を付けて保存...]を選択します。ターゲットの座標系を尋ねられます。)注意してください。データは北米のデータム(NAD 1983)にあるため、どの地理座標を希望しますが、現在世界で最も一般的なのはWGS1984です。

次に、GISでデータが表示されます。データは実際にはポイントであるか、ポリゴンである可能性があります。(あなたの家がポリゴンの場合、QgisメニューのVector-Geometry Tools-Polygon Centroidsでそれらの重心を取得する必要があります)。

最後に、実際に地理座標のポイントとして家を持っている場合、たとえばこれらの質問からのアドバイスを使用して、それらの座標を取得できます。レイヤー内のポイントの座標のリストを取得し、 QGISを使用してポイントの緯度と経度を計算するにはどうすればよいですか

さらに、多くのプログラミング言語で使用できるGISベクトルデータOGRを操作するための優れたライブラリがあります。

于 2012-11-29T04:57:58.237 に答える
1

「私はすべての家の緯度と経度が欲しい」とは、あなたがやりたいのはジオコーディングと呼ばれるプロセスであることを示唆しています。そのために使用できるサービスもあれば、無料(限定的な使用)のものもあれば、そうでないものもあります。ジオコーディングシステムのリストを見て、どこから始めればよいかを知ることから始めることができます。ジオコーディングしようとしているアドレスを抽出する以外に、GISやシェープファイルを学ぶことから始めたいとは思いません。

各区画の重心を計算することにより、各家の緯度/経度を推定できます。各区画の外接する長方形の重心を計算することで、各家の緯度/経度をより大まかに見積もることができます。どちらの場合も、区画の座標を抽出する必要があります。ミネソタ州のすべての家でそれを行う場合は、大量のデータを処理します。ジオコーディングサービスの方が安くなります。国勢調査ジオコーダーが役立つ場合があります。

于 2015-01-07T20:42:47.740 に答える