NumPy⇒Raster @ArcPy


取り敢えずラスタ周りの方が使う機会が多そうなので軽く確認。
FishNetと同じことをさせてみる(ベクトル化する意味はない)。

雨量データ/標高/人口統計等変換と連続データ系は格納はともかく表示はラスタでいきたい。
DB⇒Raster/連続データ系で速度比較してみるかなぁ。

import arcpy
import numpy
import math
import time

start = time.time()
# Local variables:
TEST_F = "C:\\XXX\\XXX.gdb\\TEST_F"
TEST_R = "C:\\XXX\\XXX.gdb\\TEST_R"

#フィッシュネットの作成
arcpy.CreateFishnet_management(TEST_F, "120 20", "120 50", "0.1", "0.1", "300", "300", "", "NO_LABELS", "DEFAULT", "POLYGON")

print "fish:", time.time() - start

orgX = 120
orgY = 20

width = 0.1
height = 0.1

colX = 300
rowY = 300

# 数量分配列作って reshapeでXYにする。
# start / stop / step / dtype
npArray = numpy.arange(0,colX * rowY,1, numpy.int32).reshape(rowY, colX)

raster = arcpy.NumPyArrayToRaster(npArray,
                                  arcpy.Point(orgX, orgY),
                                  width, height)

#print raster.isInteger

arcpy.RasterToPolygon_conversion(raster,TEST_R,"NO_SIMPLIFY")

print "raster", time.time() - start
カテゴリー: 開発 タグ: パーマリンク