ArcPyマッピングを使用してTIFFをエクスポートするときにワールドファイルを書き込みますか?


8

ドキュメントによると、オプションは次のとおりです。

ExportToTIFF(map_document、out_tiff、{data_frame}、{df_export_width}、{df_export_height}、{resolution}、{world_file}、{color_mode}、{tiff_compression}、{geoTIFF_tags})

ただし、これは機能します:

import arcpy.mapping
mxd = arcpy.mapping.MapDocument("CURRENT")
arcpy.mapping.ListDataFrames(mxd)
arcpy.mapping.ExportToTIFF(mxd,r"D:\out2.tif","PAGE_LAYOUT",640,480,96)

でもこれは:

arcpy.mapping.ExportToTIFF(mxd,r"D:\out2.tif","PAGE_LAYOUT",640,480,96,True)

収量: Runtime error <type 'exceptions.TypeError'>: PageLayoutObject: Error in executing ExportToTIFF

私はworld_fileのブール値で何か間違っていますか?

回答:


11

ワールドファイルオプションは、ページレイアウトではなく、データフレームからエクスポートする場合にのみ使用できると思います。

マップのエクスポートから

TIFF固有のオプション

TIFFファイル形式には、地理参照情報を内部に保存する追加機能があります。これはGeoTIFFです。GeoTIFFを作成するには、[ファイルの種類]ドロップダウン矢印をクリックし、[TIFF]をクリックし、[オプション]矢印をクリックしてオプションを展開し、[フォーマット]タブをクリックして、[GeoTIFFタグの書き込み]をオンにします。このオプションは、データビューでエクスポートする場合にのみ使用できます

この情報はUIからのエクスポートに関連していますが、おそらく同じロジックがArcPyにも適用されます。

これをテストしたところ、「PAGE_LAYOUT」でエラーが発生する一方で、worldファイルオプションはデータフレームで機能します。これは、ページレイアウトが実際の座標ではなく(0,0)〜(page_width、page_height)のページ座標であるため、理にかなっています。

警告:このツールは期待どおりに機能しません。(私はArcGIS Desktop 10.0 SP1を使用しています)。指定された画像サイズがデータフレームと同じアスペクト比でない場合、データフレームの見えない部分がエクスポートされ、画像がいっぱいになります。ただし、ワールドファイル内のxおよびyピクセルのスケーリングは、画像用に拡張されたものではなく、表示されているデータフレームの範囲に基づいています。

UIツール([ファイル]-> [マップのエクスポート...])を使用する場合、画像サイズはデータフレームのアスペクト比に事前設定されており、画像の解像度を変更しない限り、画像サイズを変更できないことがわかります。

回避策は、データフレームの範囲を取得し、一致する画像のアスペクト比を計算することです。そのようです:

import arcpy
mxd = arcpy.mapping.MapDocument("CURRENT")
df = arcpy.mapping.ListDataFrames(mxd)[0]
ar = df.extent.height / df.extent.width
arcpy.mapping.ExportToTIFF(mxd,r"C:\out.tif",df,1024,1024*ar,96,True)

データフレーム(実際の座標)からのみ修正
Mapperz

0

私はあなたが探しているものは信じています:mxd.pageSize.height *(conversion_factor * DPI)

conversion_factor * DPIを1つの定数に結合することも、それらを個別に保持して、[ページと印刷の設定]ウィンドウの[マップページサイズ]セクションで指定されている単位の間で変換することもできます。


0

ExportToTIFFがgeotiffを作成するようにします。次に、ExportRasterWorldFile_management(data_management \ raster \ rasterプロパティ)を使用して、ワールドファイルを生成します。このツールは、すべてのライセンスレベルで有効です。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.